码迷,mamicode.com
首页 > 编程语言 > 详细

线程生命周期

时间:2021-06-02 14:43:17      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:mina   申请   lock   ted   not   其他   ready   term   转换   

线程的生命周期是线程对象的生老病死,即线程的状态
线程生命周期可以通过 getState()方法获得, 线程的状态是Thread.State 枚举类型定义的, 由以下几种:
NEW,新建状态. 创建了线程对象,在调用 start()启动之前的状态;

RUNNABLE, 可 运行 状态. 它 是一 个复 合状 态, 包 含:READY 和 RUNNING 两个状态. READY 状态该线程可以被线程调度器进行调度使 它 处 于 RUNNING 状 态 , RUNING 状 态 表 示 该 线 程 正 在 执 行 . Thread.yield()方法可以把线程由 RUNNING 状态转换为 READY 状态

BLOCKED 阻塞状态.线程发起阻塞的 I/O 操作,或者申请由其他线程 占用的独占资源,线程会转换为 BLOCKED 阻塞状态. 处于阻塞状态的 线程不会占用CPU 资源. 当阻塞I/O 操作执行完,或者线程获得了其申 请的资源,线程可以转换为 RUNNABLE

WAITING 等待状态. 线程执行了 object.wait(), thread.join()方法会 把线程转换为 WAITING 等待状态, 执行 object.notify()方法,或者加入 的线程执行完毕,当前线程会转换为 RUNNABLE 状态

TIMED_WAITING 状态,与 WAITING 状态类似,都是等待状态.区别在 于处于该状态的线程不会无限的等待,如果线程没有在指定的时间范 围内完成期望的操作,该线程自动转换为 RUNNABLE

TERMINATED 终止状态,线程结束处于终止状态
技术图片

线程生命周期

标签:mina   申请   lock   ted   not   其他   ready   term   转换   

原文地址:https://www.cnblogs.com/pr1012468597/p/14823105.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!