美文网首页
线程的状态和生命周期

线程的状态和生命周期

作者: iOS心安 | 来源:发表于2020-12-02 13:57 被阅读0次

    那么现在我们来了解线程一个完整的生命周期的运行过程,与下图可以看出有:新建 - 就绪 - 运行 - 阻塞 - 死亡五个过程。


    生命周期图

    下面我们一个一个的来介绍:

    • 新建:刚刚创建还在内存当中,还没有在可调度线程池中,还不能被cpu调度执行工作。
    • 就绪:进入调度池,可被调度。
    • 运行:CPU负责调度”可调度线程池”中的处于”就绪状态”的线程,线程执行结束之前,状态可能会在”就绪”和”运行”之间来回的切换。“就绪”和”运行”之间的状态切换由CPU来完成,程序员无法干涉
    • 阻塞:正在运行的线程,当满足某个条件时,可以用休眠或者锁来阻塞线程的执行,被移出调度池,进入内存,不可执行。
    • 死亡:分为两种情况。正常死亡,线程执行结束。非正常死亡,程序突然崩溃/当满足某个条件后,在线程内部强制线程退出,调用exit方法。

    exit方法的作用和总结

    1. 使当前线程退出.
    2. 不能在主线程中调用该方法,会使主线程退出.
    3. 当当前线程死亡之后,这个线程中的代码都不会被执行.
    4. 在调用此方法之前一定要注意释放之前由C语言框架创建的对象.

    本文参考上进求知,认真思辨wuhao丶

    上一篇:多线程的基本理解
    下一篇:实现多线程的方法有哪些?

    相关文章

      网友评论

          本文标题:线程的状态和生命周期

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