当前位置: 首页 > 编程笔记 >

java 线程的生命周期详解

吕淮晨
2023-03-14
本文向大家介绍java 线程的生命周期详解,包括了java 线程的生命周期详解的使用技巧和注意事项,需要的朋友参考一下

一个线程的生命周期:

新建状态:

使用 new 关键字和 Thread 类或其子类建立一个线程对象后,该线程对象就处于新建状态。它保持这个状态直到程序 start() 这个线程。

就绪状态:

当线程对象调用了start()方法之后,该线程就进入就绪状态。就绪状态的线程处于就绪队列中,要等待JVM里线程调度器的调度。

运行状态:

如果就绪状态的线程获取 CPU 资源,就可以执行 run(),此时线程便处于运行状态。处于运行状态的线程最为复杂,它可以变为阻塞状态、就绪状态和死亡状态。

阻塞状态:

如果一个线程执行了sleep(睡眠)、suspend(挂起)等方法,失去所占用资源之后,该线程就从运行状态进入阻塞状态。在睡眠时间已到或获得设备资源后可以重新进入就绪状态。

死亡状态:

一个运行状态的线程完成任务或者其他终止条件发生时,该线程就切换到终止状态。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

 类似资料:
  • 本文向大家介绍Java线程的生命周期的详解,包括了Java线程的生命周期的详解的使用技巧和注意事项,需要的朋友参考一下 Java线程的生命周期的详解 对于多线程编程而言,理解线程的生命周期非常重要,本文就针对这一点进行讲解。 一、线程的状态 线程的存在有几种不同的状态,如下: New状态 Ready状态 Running状态 Dead状态 Non Runnable状态 1、New状态 New状态是线

  • 线程的生命周期可以分为五个状态。 Java中线程的生命周期由JVM控制。Java线程状态如下: 新建 就绪 运行 阻塞 死亡 1)新建 如果创建Thread类的实例,但在调用start() 方法之前,则该线程处于新建状态。 2)就绪 调用start() 方法后,线程处于就绪状态,但是线程调度程序未将其选择为正在运行的线程。 3)运行 如果线程调度程序选择了该线程,则该线程处于运行状态。 4)阻塞

  • 本文向大家介绍springMVC的生命周期详解,包括了springMVC的生命周期详解的使用技巧和注意事项,需要的朋友参考一下 springMVC的生命周期,听到的时候都没有反应过来,springMVC还有生命周期?现在看来生命周期就是springMVC的流程,SpringMVC是MVC思想的一种实现,下面看一下MVC思想的流程图: MVC的核心思想如上图,那么springMVC是如何实现MVC的

  • 本文向大家介绍Java 线程的生命周期详细介绍及实例代码,包括了Java 线程的生命周期详细介绍及实例代码的使用技巧和注意事项,需要的朋友参考一下 当线程被创建并启动之后,它既不是一启动就进入执行状态,也不是一直处于执行状态,在其生命周期中,要经过“新建(New)”、“就绪(Runnable)”、“运行(Running')”、“阻塞(Blocked)”和“死亡(Dead)”五种状态。线程在创建之后

  • 本文向大家介绍Android Activity生命周期详解,包括了Android Activity生命周期详解的使用技巧和注意事项,需要的朋友参考一下 Activity 的生命周期。 一、理解Activity Activity是Android程序的4大组件之一。 Activity是Android程序的表示层。程序的每一个显示屏幕就是一个Activity。 学过WEB开发的同学,可以把Activit

  • 本文向大家介绍Java 线程的生命周期完整实例分析,包括了Java 线程的生命周期完整实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Java 线程的生命周期。分享给大家供大家参考,具体如下: 一 代码 二 运行 I am Waiting Thread: WaitingThread I am Blocked Thread: BThread-1 I am Sync Thread: S