java中线程de生命周期
一个完整的线程要经历5个状态:
1)新建:
当一个Thread类或其子类的对象被声明并创建时,新生的线程对象处于新建状态
2)就绪:
处于新建状态的线程被start()后,将进入线程队列等待CUP时间片,此时它已具备了运行的条件,只是没分配到CPU的资源
3)运行:
当就绪的线程被调度并获得CPU资源时,便进入运行状态,run()方法定义了线程的操作和功能
4)阻塞:
在某种特殊情况下,被人为挂起或执行输入输出操作时,让出CPU并临时中止自己的执行,进入阻塞状态
5)死亡:
线程完成了它的全部工作或线程被提前强制地中止或出现异常导致结束
附图:
