理解:从线程创建到线程消亡的过程。过程中划分了几种状态。不同状态描述不同信息。
新建状态:
创建线程对象:new Thread(…)
就绪状态(可运行状态):
调用start方法后的状态(一切都准备好,等待CPU的调度)
运行状态:
执行run方法(CPU来了)
消亡态:
run方法执行结束
出现异常
调用方法stop、destory(过时) 线程退出执行
阻塞状态:
从运行到阻塞,接触阻塞回到就绪
主动放弃执行资格,意味着CPU不调度
sleep()、wait()—notify()
以上的线程的各个状态是理论上的,如果想要获取当前线程的真实状态,可以通过Thread.State来获取。该类是一个内部类,线程的各个状态只有线程自身最清楚。该类是一个枚举类,类中的枚举值描述着线程某一时刻的状态信息。
获取线程的此时状态:getState().