多线程
一、多进程
1、概念:系统中能够独立运行并且作为资源分配的基本单元。
2、优点:
可以同时运行多个任务
程序因IO堵塞时,可以释放CPU,让CPU为其他程序服务
当系统有多个CPU时,可以为多个程序同时服务
3、缺点:
太笨重,不好管理,不好切换
二、多线程
1、概念:线程是独立运行和独立调度的基本单元。
2、优点:
线程共享数据
线程通讯更高效
线程更轻量级,更容易切换
多个线程更容易管理
多线程的实现
一、实现方法:
java.lang.Thread
– 线程继承Thread类,实现run方法
java.lang.Runnable接口
– 线程实现Runnable接口,实现run方法
二、两种方法的比较
Thread占据了父类的名额,不如Runnable方便
Thread 类实现Runnable
Runnable启动时需要Thread类的支持
Runnable 更容易实现多线程中资源共享
推荐使用Runnable
三、线程信息共享
1、采用volatile 关键字修饰变量
2、synchronized 修饰代码段或者方法
四、线程的管理