【JavaEE面试题(八)java线程的状态】【new:安排工作还未开始行动 RUNNABLE:工作中或者即将工作 BLOCKED:等待开锁 WAITING:等待唤醒 TERMINGTED:工作完成】

【JavaEE面试题(八)java线程的状态】【new:安排工作还未开始行动 RUNNABLE:工作中或者即将工作 BLOCKED:等待开锁 WAITING:等待唤醒 TERMINGTED:工作完成】_第1张图片

观察线程的所有状态(遍历 Thread.State.values())

线程的状态是一个枚举类型 Thread.State

public class ThreadState {
    public static void main(String[] args) {
        for (Thread.State state : Thread.State.values()) {
            System.out.println(state);
       }
   }
}
NEW: 安排了工作, 还未开始行动
RUNNABLE: 可工作的. 又可以分成正在工作中和即将开始工作. 
BLOCKED: 这几个都表示排队等着其他事情(等待获取锁)
WAITING: 这几个都表示排队等着其他事情
TIMED_WAITING: 这几个都表示排队等着其他事情
TERMINATED: 工作完成了.

线程的状态

【JavaEE面试题(八)java线程的状态】【new:安排工作还未开始行动 RUNNABLE:工作中或者即将工作 BLOCKED:等待开锁 WAITING:等待唤醒 TERMINGTED:工作完成】_第2张图片
【JavaEE面试题(八)java线程的状态】【new:安排工作还未开始行动 RUNNABLE:工作中或者即将工作 BLOCKED:等待开锁 WAITING:等待唤醒 TERMINGTED:工作完成】_第3张图片【JavaEE面试题(八)java线程的状态】【new:安排工作还未开始行动 RUNNABLE:工作中或者即将工作 BLOCKED:等待开锁 WAITING:等待唤醒 TERMINGTED:工作完成】_第4张图片BLOCKED 表示等待获取锁, WAITING 和 TIMED_WAITING 表示等待其他线程发来通知
TIMED_WAITING 线程在等待唤醒,但设置了时限; WAITING 线程在无限等待唤醒

你可能感兴趣的:(面试题,JavaEE初阶,java,开发语言)