java 线程的几种状态(转载)
java thread的运行周期中, 有几种状态, 在 java.lang.Thread.State 中有详细定义和说明:
NEW 状态是指线程刚创建, 尚未启动
RUNNABLE 状态是线程正在正常运行中, 当然可能会有某种耗时计算/IO等待的操作/CPU时间片切换等, 这个状态下发生的等待一般是其他系统资源, 而不是锁, Sleep等
WAITING 这个状态下是指线程拥有了某个锁之后, 调用了他的wait方法, 等待其他线程/锁拥有者调用 notify / notifyAll 一遍该线程可以继续下一步操作, 这里要区分 BLOCKED 和 WATING 的区别, 一个是在临界点外面等待进入, 一个是在理解点里面wait等待别人notify, 线程调用了join方法 join了另外的线程的时候, 也会进入WAITING状态, 等待被他join的线程执行结束
TIMED_WAITING 这个状态就是有限的(时间限制)的WAITING, 一般出现在调用wait(long), join(long)等情况下, 另外一个线程sleep后, 也会进入TIMED_WAITING状态
TERMINATED 这个状态下表示 该线程的run方法已经执行完毕了, 基本上就等于死亡了(当时如果线程被持久持有, 可能不会被回收)
下面谈谈如何让线程进入以上几种状态:
Posts related to java 线程的几种状态
转载于:https://www.cnblogs.com/zhengah/p/4826405.html
java 线程的几种状态(转载)相关推荐
- Java线程的6种状态
线程的概念,以及线程的创建方式,见我之前写的博文 本篇文章主要讲Java线程的6种状态 6种状态:初始状态(new) .可运行状态(Runnable).运行状态(Running).阻塞状态(Block ...
- 详解Java线程的几种状态
一言不合翻源码,一下就是Thread类源码中State内置枚举,列举出了Java线程的几种状态: /*** A thread state. A thread can be in one of the ...
- Java 线程的6种状态(简单介绍)
关于Java线程的状态网上的说法不一,有的说是6种状态,有的说是5中状态,索性就查看了一下Java源码.Thread类里面有一个枚举类,如下: public enum State {NEW,RUNNA ...
- java线程的几种状态
线程共有6种状态:NEW.RUNNABLE.BLOCKED.WAITING.TIMED_WAITING.TERMINATED.分别对应于:新建.运行.阻塞.等待.带超时的等待.终止. 1)新建状态(N ...
- Java线程的5种状态及切换
ava中的线程的生命周期大体可分为5种状态. 1. 新建(NEW):新创建了一个线程对象. 2. 可运行(RUNNABLE):线程对象创建后,其他线程(比如main线程)调用了该对象的start()方 ...
- java 线程的几种状态
java thread的运行周期中, 有几种状态, 在 java.lang.Thread.State 中有详细定义和说明: NEW 状态是指线程刚创建, 尚未启动 RUNNABLE 状态是线程正在正常 ...
- Java线程的6种状态及切换(透彻讲解)
Java中线程的状态分为6种. 1. 初始(NEW):新创建了一个线程对象,但还没有调用start()方法. 2. 运行(RUNNABLE):Java线程中将就绪(ready)和运行中(running ...
- Java 线程的 5 种状态
线程状态图: 线程共包括以下 5 种状态: 1. 新建状态(New): 线程对象被创建后,就进入了新建状态.例如,Thread thread = new Thread(). 2. 就绪状态(Runna ...
- Java线程的6种状态(NEW,RUNNABLE,BLOCKED,WAITING,TINED_WATING,TEMINATE)
1,NEW()新建 线程刚被创建,但未被启动.也就是没有调用start方法. 2,Runnable(可运行) 线程可以在java的虚拟机中运行的状态,可能正在运行自己的代码,也可能没有,这取决于cpu ...
最新文章
- begin end会产生事务吗_无线信号放大器会产生同频干扰吗?
- [云炬创业学笔记]第二章决定成为创业者测试8
- EasyExcel实现读操作
- 范醒哲:敬畏自然 渴望技术 —— 新冠肺炎后对网络数据传输能力的思考
- mysqlplus 批量插入_ibatis结合oracle批量插入三种方法的测评
- Codeforces Round #696
- Android Studio 使用教程(5)---打包apk
- python xml.dom模块解析xml
- Mysql 版本号、存储引擎、索引查询
- 5.4.2 Using Hibernate templates
- UWP开发学习笔记3
- Charles添加断点拦截请求 修改request或者修改response
- 18.Linux软件安装之Rpm安装
- 学术搜索,Web Of Science 核心合集检索方法,SCI分区及影响因子查看方法
- 计算机一级office题库百度云,历年全国计算机等级考试一级MSOffice真题
- spring-05 AOP
- ASPICE过程开发
- HbuilderX未检测到手机或模拟器
- 超详细的Latex快速基础入门(第一节)
- 游戏策划笔记:交互分析
热门文章
- Hyper-V安装ReactOS未成功
- 一次Rootkit实施失败记(图解)
- 成功的自动化测试实施的5大支柱(译)
- 基于【 centos7】一 || 安装ELK
- 多线程利器-队列(queue)
- 洛谷P1730最小密度路径
- 快速生成解决方案 ctrl + shilf + b
- python绘图模块pandas_python绘图:matplotlib和pandas的应用
- 南京晓庄学院大一第二学期计算机数据结构期末考试试卷及答案,南京晓庄学院数据结构题库参考标准答案...
- 【控制】《最优控制理论与系统》-胡寿松老师-第1章-导论