美文网首页
【线程】五种线程状态

【线程】五种线程状态

作者: 浅浅星空 | 来源:发表于2019-02-25 20:49 被阅读64次
线程状态
  1. 新建( new ):新创建了一个线程对象

  2. 可运行( runnable ):线程对象创建后,其他线程(比如 main 线程)调用了该对象 的 start ()方法。该状态的线程位于可运行线程池中,等待被线程调度选中,获 取 cpu 的使用权

  3. 运行( running ):可运行状态( runnable )的线程获得了 cpu 时间片( timeslice ) ,执行程序代码

  4. 阻塞( block ):阻塞状态是指线程因为某种原因放弃了 cpu 使用权,也即让出了 cpu时间片,暂时停止运行。直到线程进入可运行( runnable )状态,才有 机会再次获得 cpu时间片 转到运行( running )状态。阻塞的情况分三种:
    (一). 等待阻塞:运行( running )的线程执行 wait ()方法, JVM 会把该线程放 入等待队列( waitting queue )中。
    (二). 同步阻塞:运行( running )的线程在获取对象的同步锁时,若该同步锁 被别的线程占用,则 JVM 会把该线程放入锁池( lock pool )中。
    (三). 其他阻塞: 运行( running )的线程执行 Thread.sleep ( long ms )或 join ()方法,或者发出了 I / O 请求时, JVM 会把该线程置为阻塞状态。 当 sleep ()状态超时、 join ()等待线程终止或者超时、或者 I / O 处理完毕时,线程重新转入可运行( runnable )状态。

  5. 死亡( dead ):线程 run ()、 main () 方法执行结束,或者因异常退出了 run ()方法,则该线程结束生命周期。死亡的线程不可再次复生

引用原文:
https://www.nowcoder.com/ta/review-java/review?page=13

相关文章

  • java多线程

    线程六种状态 New:尚未启动的线程的线程状态(new Thread) Runnable:可运行线程的线程状态,等...

  • 2.线程状态

    线程的状态 New:尚未启动的线程的线程状态 Runnable:调用start,可运行线程的线程状态,但是实际上不...

  • java多线程基本概念(一)

    线程生命周期 说明线程工共包含5个状态: 新建状态new:调用线程构造方法创建线程后,线程进入新建状态; 就绪状态...

  • 线程状态

    线程的5个状态 目录 线程停止 线程休眠 线程礼让(不重要) 线程强制执行 线程状态观测 1. 线程停止 Warn...

  • Java 多线程

    多线程主要技术进程与线程线程状态阻塞状态分类线程的调度常用函数说明Thread类方法创建线程线程池线程安全向线程传...

  • # iOS基础 # 线程知识整理

    什么是线程 1、线程的定义、状态、属性 进程 线程 线程与进程的共同点和区别 线程的状态 线程的特性 2、线程之间...

  • 线程的学习总结

    我打算从线程得生命周期开始总结多线程: 线程的生命周期: 新建状态:线程对象创建之后,线程进入新建状态. 就绪状态...

  • 4 多线程

    多线程 线程的状态 新状态 就绪状态 运行状态 阻塞状态 终止状态 线程的优先级 1--10, 默认为5,但线程优...

  • 线程状态

    java线程与操作系统线程状态略有不同。 1. 操作系统底层线程状态: 课本经典五状态: 2. JAVA线程状态:...

  • Android 面试系统复习系列(四)线程 / 线程池 / 多线

    Android 面试系统复习系列(四)线程 / 线程池 / 多线程 线程 线程的状态 New ...

网友评论

      本文标题:【线程】五种线程状态

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