线程状态 - 图1

NEW:

线程被创建但尚未启动。

RUNNABLE:

线程正在执行或等待CPU的时间片(这包括正在执行和就绪状态)。

BLOCKED:

线程等待获取对象锁(即阻塞在同步代码块中)。

WAITING:

线程在等待另一个线程的通知(调用Object.wait()、Thread.join()或LockSupport.park())。

TIMED_WAITING:

线程在等待特定时间(调用Thread.sleep()、Object.wait(long timeout)、Thread.join(long millis)、LockSupport.parkNanos()或LockSupport.parkUntil())。

TERMINATED:

线程已经完成执行。