网站首页 > 精选教程 正文
NEW新建状态
我们可以通过实现Runnable接口或继承Thread声明一个线程类,new一个实例后,线程就进入了新建状态。
RUNNABLE可运行状态
处于 runnable 状态下的线程正在 Java 虚拟机中执行,但它可能正在等待来自于操作系统的其它资源,比如处理器或IO。
?
参考 https://mp.weixin.qq.com/s/2aMRGJGsde_fpqhHxxl26Q
BLOCKED阻塞状态
一个处于 blocked 状态的线程正在等待一个监视器锁以进入一个同步的块或方法。或者一个处于 blocked 状态的线程正在等待一个监视器锁,在其调用 Object.wait 方法之后被其他线程调用Object.notify方法,以再次进入一个同步的块或方法。
?
参考 https://www.cnblogs.com/zhongchang/articles/10339124.html
WAITING 等待
一个线程进入 WAITING 状态是因为调用了以下方法:
不带时限的 Object.wait 方法
不带时限的 Thread.join 方法
LockSupport.park
然后会等其它线程执行一个特别的动作,比如:
一个调用了某个对象的 Object.wait 方法的线程会等待另一个线程调用此对象的 Object.notify () 或 Object.notifyAll ()。
一个调用了 Thread.join 方法的线程会等待指定的线程结束
TIMED_WAITING 超时等待
一个线程处于这一状态是因为用一个指定的正的等待时间(为参数)调用了以下方法中的其一:
Thread.sleep
带时限(timeout)的 Object.wait
带时限(timeout)的 Thread.join
LockSupport.parkNanos
LockSupport.parkUntil
TERMINATED 终止状态
终止状态,这个也没什么好说的,完成了执行后(completed execution)或者说退出了(exited)。线程就进入了终止状态。
- 上一篇: 2.线程执行过程中的六种状态
- 下一篇: java多线程的几种状态
猜你喜欢
- 2024-11-18 Java并发编程线程状态转换
- 2024-11-18 Java面试必考问题:线程的生命周期
- 2024-11-18 Java 19 虚拟线程的状态变化,停驻与锁定
- 2024-11-18 Java线程生命周期详解?
- 2024-11-18 线程从创建最终消亡,要经历的若干状态,你了解其中的多少?
- 2024-11-18 java线程状态之WAITING(等待)
- 2024-11-18 浅谈Java线程:线程基础知识扫盲
- 2024-11-18 Java线程在各个状态下调用start方法会发生什么事情?
- 2024-11-18 为什么Java中线程没有Running状态
- 2024-11-18 阻塞模型将会使线程休眠,为什么 Java 线程状态却是 RUNNABLE?
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)