Java线程的状态
JDK 1.5 前线程状态
线程状态 | 中文名称 | 描述 |
---|---|---|
New | 新建 | 刚创建的线程,还未启动。 |
Runnable | 可运行 | 线程可以运行,可能在等待 CPU 调度。 |
Blocked | 阻塞 | 线程被阻塞,正在等待锁的释放。 |
Dead | 终止 | 线程执行完成或异常终止,已进入结束状态。 |
JDK 1.5 后线程状态
线程状态 | 中文名称 | 描述 |
---|---|---|
New | 新建 | 刚创建的线程,还未启动。 |
Runnable | 可运行 | 线程可以运行,可能在等待 CPU 调度。 |
Blocked | 阻塞 | 线程尝试获取锁失败,被阻塞,等待锁释放。 |
Waiting | 等待 | 线程进入等待状态,等待其他线程显式唤醒,通常由 Object.wait() 引起。 |
Timed Waiting | 计时等待 | 线程等待指定时间后自动唤醒,由 Thread.sleep() 或 wait(time) 引起。 |
Terminated | 终止 | 线程执行完成或异常终止,已进入结束状态。 |