美文网首页
425,线程的状态与生命周期(面试点:线程的整个生命周期:新建-

425,线程的状态与生命周期(面试点:线程的整个生命周期:新建-

作者: 枫叶1234 | 来源:发表于2021-01-20 16:39 被阅读0次

下图是线程状态示意图,从图中可以看出线程的生命周期是:新建 - 就绪 - 运行 - 阻塞 - 死亡

image.png

下面分别阐述线程生命周期中的每一步

  • 新建:实例化线程对象

  • 就绪:向线程对象发送start消息,线程对象被加入可调度线程池等待CPU调度。

  • 运行:CPU 负责调度可调度线程池中线程的执行。线程执行完成之前,状态可能会在就绪和运行之间来回切换。就绪和运行之间的状态变化由CPU负责,程序员不能干预。

  • 阻塞:当满足某个预定条件时,可以使用休眠或锁,阻塞线程执行。sleepForTimeInterval(休眠指定时长),sleepUntilDate(休眠到指定日期),@synchronized(self):(互斥锁)。

  • 死亡:正常死亡,线程执行完毕。非正常死亡,当满足某个条件后,在线程内部中止执行/在主线程中止线程对象

  • 还有线程的exit和cancel

  • [NSThread exit]:一旦强行终止线程,后续的所有代码都不会被执行。

  • [thread cancel]取消:并不会直接取消线程,只是给线程对象添加 isCancelled 标记。

相关文章

  • 线程的学习总结

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

  • 425,线程的状态与生命周期(面试点:线程的整个生命周期:新建-

    下图是线程状态示意图,从图中可以看出线程的生命周期是:新建 - 就绪 - 运行 - 阻塞 - 死亡 下面分别阐述线...

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

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

  • 彻底搞懂Java的等待-通知(wait-notify)机制

    线程的生命周期转换 新建状态(New):新建一个线程对象。 就绪/可运行状态(Runnable):线程对象创建后,...

  • Kotlin线程(3)线程状态

    在线程的生命周期中,线程会有5种状态。 新建状态新建状态(New)是通过实例化 Thread 创建线程对象,它仅仅...

  • 多线程学习笔记

    一.线程基础概念 1.线程生命周期 线程生命周期 新建-就绪-运行-死亡,运行中可以进入阻塞状态 线程执行完任务会...

  • java多线程-关键字

    线程的生命周期 NEW: - 线程被创建的状态 RUNNABLE: - 新建线程调用start方法后- yield...

  • 理解java线程

    java线程的生命周期 Java线程具有五中基本状态新建状态(New):当线程对象对创建后,即进入了新建状态,如:...

  • Java线程状态及转化

    线程状态 Java中的线程的生命周期大体可分为5种状态: 新建状态(New) : 线程对象被创建后,就进入了新建状...

  • Java基础知识(三)

    一、线程状态转化 线程状态生命周期如下: 新建状态(New):新创建了一个线程对象。 就绪状态(Runnable)...

网友评论

      本文标题:425,线程的状态与生命周期(面试点:线程的整个生命周期:新建-

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