线程的6种状态

原文链接:线程的6种状态 – 编程屋

线程中的6中状态

1 初始状态(NEW):线程未开始的状态

线程刚刚创建出来,还没有调用start方法,线程就进入了初始状态

2 运行时状态(RUNNABLE)

包括了线程状态中的Running和Ready,也就是说处于此状态的线程可能是正在运行,也可能是就绪状态,正在等待系统资源,等待CPU为它分配时间片

3 阻塞状态(BLOCKED)

阻塞状态就是说线程阻塞在进入synchronized关键字修饰的方法或代码块(获取锁)时的状态

4 等待状态(WAITING)

处于这种状态的线程不会被CPU分配执行时间,他们要等待的显示被唤醒,否则会处于无限期的等待状态

5超时等待(TIMED_WAITING):

处于这种状态的线程不会被分配CPU执行时间,无需无限期的等待被其他线程显示的唤醒,比如用sleep方法传入一个要睡眠的时间,时间到了以后线程自己会醒

6终止状态(TERMINATED):

当线程的run()方法完成时,或者主线程的run()方法完成时,我们就认为他终止了。线程一旦终止了就不能复生。

以上只是部分内容,为了维护方便,本文已迁移到新地址:线程的6种状态 – 编程屋

你可能感兴趣的:(多线程,java)