多线程的学习笔记

来源:互联网 发布:mac如何强制退出软件 编辑:程序博客网 时间:2024/05/22 01:58
多线程:
进程:正在执行中的程序,其实是应用程序在内存中运行的那片空间。
线程:进程中的一个执行单元,杜泽进程中的程序的运行,一个进程中至少要有一个进程
      一个进程可以有多个线程,称之为多线程的应用程序。


两种方式:1.继承Thread 重写run方法,重建子类对象,调用start()方法
          2.实现接口Runnable 实现run方法,创建Tread对象,将Runnable接口的子类对象作为参数传递给Tread类的构造函数,调用start()方法。
          class Thread{
               private Runnable target;
               Thread(Runnable target)
               {
                 this.target = target;
                }
               public void run()
                {
                 if(target!=null)
                 {
                  target.run();
                  }
                 }
               public void start()
               {
                run();
                }
           }
实现Runnable比继承Thread好,避免了继承的单一性。
售票案列:


class Ticket implements Runnable
{
private int tickets = 100;
public void run()
{
while(true){
if(tickets>0)
{
System.out.println(Thread.currentThread().getname()+"......"+tickets--);
}
}
}
}
class ThreadDemo
{
Ticket t= new Ticket();
Thread t1 = new Thread(t);
Thread t2 = new Thread(t);
Thread t3 = new Thread(t);
Thread t4 = new Thread(t);
t1.start();
t2.start();
t3.start();
t4.start();
}
0 0
原创粉丝点击