public enum State {
NEW,
RUNNABLE,
##################synchronized,抢占同步锁的时候,线程会进入blocked状态
BLOCKED,
WAITING,
TIMED_WAITING,
TERMINATED;
}
new 状态表示刚刚创建的线程,等到线程的start()方法调用的时候,才表示线程开始执行。
线程执行时,处于runnable状态,表示线程所需的一切资源都已经准备好了。
如果线程在执行过程中遇到synchronized代码块,就会进入blocked阻塞状态,线程暂停执行。
waiting 和TIMED_WAITING都表示等待状态,它们的区别是waiting会进入一个无时间限制的等待,TIMED_WAITING会进行一个有时限的等待。