除非一台计算机有多个cpu(如双核),否则是不会真正的运行两个以上的程序的。但是如果是那样我们为什么可以同时运行多个程序呢?
这就是多线程的作用了,一个进程是由多个线程组成的,一台计算机可以同时运行多个不同进程的线程,而不是一个完整的进程。
多线程主要有两个优势:
1.提高界面程序的响应速度
2.充分利用系统资源
在我们的OS里,
进程是资源分配的最小单位
线程是cpu调度的最小单位
1、继承Thread
创建: A extends Thread
在A中实现run()
启动:利用继承自Thread 的strart() 方法
A a = new A();
a.start();
2、实现Runnable接口
创建: A implements Runnable
在A中实现run()
启动: 以A的对象为Thread的构造函数的参数创建Thread对象
并且利用它的start()方法调度启动线程
A a = new A();
Thread b = new Thread(a);
b.start();
3、利用Timer TimerTask
创建:创建TimerTask的子类,并实现run()方法得到时钟器任务类
MyTimerTask extends TimerTask{
public void run(){
}
}
启动:创建时钟器Timer对象
利用时钟器对象的schedule()方法启动线程任务
Timer timer = new Timer();
timer.schedule(new MyTimerTask(), ....,...);