Thread.State 是一个 Thread 的嵌套类,即成员内部类
这个类,是描述线程状态的类
1.线程的状态概述
在给定的时间点上,一个线程只能处于一种状态,
这些状态是 JVM 虚拟机的状态,而不是操作系统的线程状态
线程的状态共有 6 中
- NEW:线程至今还未启动
- RUNNABLE:正在执行 java 程序
- BLOCKED:阻塞状态(没有 cpu )
- WAITING:无限等待状态
- TIMED_WAITING:睡眠状态
- TERMINATED:死亡状态
2. 线程状态转换图
睡眠状态 与 等待状态是不同的
睡眠是等待 n 秒后,就会继续运行,
等待状态,需要手动唤醒,唤醒后,可能处于运行态或阻塞态
↓-----------------------------
BLOCKED TIMED_WAITING |
↗ ⇅ ↗↙ |
NEW ⇒ RUNNABLE |
⇓ ↘↖ |
TERMINATED WAITING ----------