Java 线程在运⾏的⽣命周期中的指定时刻只可能处于下⾯ 6 种不同状态的其中⼀个状态。
状态名称 | 说明 |
NEW | 初始状态,线程被构建,但是还没有调⽤start()⽅法 |
RUNNABLE | 运⾏状态,Java线程将操作系统中的就绪和运⾏两 种状态统称为"运⾏中" |
BLOCKED | 阻塞状态,表示线程阻塞于锁 |
WAITING | 等待状态,表示线程进⼊等待状态,进⼊该状态表 示当前线程需要其他线程通知(notify或者 notifyAll) |
TIME_WAITING | 超时等待状态,可以指定等待时间⾃⼰返回 |
TERMINATED | 终⽌状态,表示当前线程已经执⾏完毕 |
查看Thread类中定义了⼀个State枚举类型
public enum State {
/**
* Thread state for a thread which has not yet started.
*/
NEW,
RUNNABLE,
BLOCKED,
WAITING,
TIMED_WAITING,
TERMINATED;
}