美文网首页Java并发编程
Java并发编程 - 线程状态

Java并发编程 - 线程状态

作者: HRocky | 来源:发表于2018-08-18 17:39 被阅读7次

    These states are virtual machine states which do not reflect any operating system thread states.

    Java语言中规定了线程的状态,但是这些状态只是表现在JVM层面上,并不反映的是操作系统线程状态。

    线程状态转移图

    线程状态转移图.png

    线程状态定义

    NEW

    这个状态表示:线程还未启动

    RUNNABLE

    这个状态表示:线程在Java虚拟机中可运行

    RUNNABLE状态包括了操作系统线程状态中的Running和Ready,也就是说处于此状态的线程可能正在运行,也可能正在等待系统资源,如等待CPU为它分配时间片;等待网络IO读取数据。

    BLOCKED

    这个状态表示:线程阻塞等待监视锁。

    WAITING

    这个状态表示:线程处于无限期等待状态

    处于这种状态的线程不会被分配CPU执行时间,它们要等待显示地被其他线程唤醒。

    TIMED_WAITING

    这个状态表示:线程限期等待状态。

    与WAITING不同的是等待时间的区别。

    TERMINATED

    这个状态表示:线程已停止运行。

    线程已完成执行

    相关文章

      网友评论

        本文标题:Java并发编程 - 线程状态

        本文链接:https://www.haomeiwen.com/subject/lpjrpftx.html