
进程
线程
多线程
虚拟CPU
执行的代码
处理的数据
新建
可运行
死亡
阻塞
中断线程
interrupt()来终止线程,可终止处于阻塞状态或者正在运行的线程
测试线程是否被中中断的方法
void interrupt()
static boolean interrupted()
boolean isInterrupted()
步骤
使用Runnable接口方法情况
Thread方法情况
start()
run()
yield()
isAlive()
sleep(int millsecond)
void wait()
定义
优先级
优先级高的先执行
每个线程创建时都会被自动分配一个优先级,默认时,继承其父类优先级
任务紧急的线程,其优先级较高
同优先级的线程 先进先出 原则
方法
setPriority(int newPriority)
int getPriority()
static void yield()
自然死亡
强迫死亡
暂停一个线程 也称挂起
方法
sleep()
wait() / notify() / notifyAll()
join()
目的
实现互斥锁
第一用来排列等待锁定标志的线程
第二用来实现wait()和notify()的交互机制
wait()作用时让当前线程释放其所持有的对象互斥锁,进入wait队列
notify()/notifyAll()的作用时唤醒一个或所有正在等待队列中等待的线程,并将它们移入等待同一个对象互斥锁队列