首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
在Java线程状态转换时,下列转换不可能发生的有()?
[不定项选择题]
在Java线程状态转换时,下列转换不可能发生的有()?
初始态->运行态
就绪态->运行态
阻塞态->运行态
运行态->就绪态
查看答案及解析
添加笔记
邀请回答
收藏(6175)
分享
60个回答
添加回答
705
推荐
FEFJay
1.要得到本题答案,根据下面简图(***版)就可以获得
拓展补充
2.Java线程的各个状态间的关系流程-简图
3.
Java线程的各个状态间的关系流程-完整信息图
4.wait()、sleep()、yield()的理解
1)wait()是Object的实例方法,在
synchronized同步环境使用,作用当前对象,会释放对象锁,需要被唤醒。
2)sleep()是Thread的静态方法,不用在同步环境使用,作用当前线程,不释放锁。
3)yield()
是Thread的静态方法,作用当前线程,释放当前线程持有的CPU资源,将CPU让给优先级不低于自己的线程用,调用后进入就绪状态。
知识的搬运工:其他大佬的见解,推荐链接
https://my.oschina.net/mingdongcheng/blog/139263
https://www.toutiao.com/i6368772681411592706/
http://www.jianshu.com/p/25e959037eed
编辑于 2018-05-24 10:43:48
回复(59)
103
bbblemon
选AC,只有就绪态和运行态可以直接相互转换,其他都是单向的。
为什么大家的图都那么丑啊。。。
发表于 2018-07-09 10:39:06
回复(12)
41
doer3
发表于 2017-08-23 17:48:38
回复(3)
13
I'maMother***Star
初始->就绪->运行->阻塞->就绪->运行
发表于 2017-08-18 18:36:29
回复(0)
12
叶磊201905122010454
发表于 2019-06-16 17:29:34
回复(0)
9
笨小孩k
JAVA核心技术卷I-627页
发表于 2017-08-20 18:23:14
回复(5)
6
游离
给你们一张终极版
发表于 2018-02-28 10:45:18
回复(0)
4
闪电利剑
根据评论整理的
发表于 2021-01-31 16:55:31
回复(0)
3
选择024
1.要得到本题答案,根据下面简图(***版)就可以获得
拓展补充
2.Java线程的各个状态间的关系流程-简图
3.Java线程的各个状态间的关系流程-完整信息图
4.wait()、sleep()、yield()的理解
1)wait()是Object的实例方法,在
synchronized同步环境使用,作用当前对象,会释放对象锁,需要被唤醒。
2)sleep()是Thread的静态方法,不用在同步环境使用,作用当前线程,不释放锁。
3)yield()是Thread的静态方法,作用当前线程,释放当前线程持有的CPU资源,将CPU让给优先级不低于自己的线程用,调用后进入就绪状态。
发表于 2017-11-27 09:21:20
回复(0)
2
牛客59880486号
准备--就绪--运行--阻塞,就绪和运行可相互转,运行到阻塞,再进就绪
发表于 2021-11-04 17:07:07
回复(0)
2
海海不掉头发
运行态可以直接到就绪态,两者之间可以互相转换。
发表于 2021-04-30 17:14:05
回复(0)
2
大橘已定
从源码解读线程(Thread)和线程池(ThreadPoolExecutor)的状态
发表于 2019-03-26 16:23:12
回复(0)
2
牛客143068号
1)wait()是Object的实例方法,在synchronized同步环境使用,作用当前对象,会释放对象锁,需要被唤醒。 2)sleep()是Thread的静态方法,不用在同步环境使用,作用当前线程,不释放锁。 3)yield()是Thread的静态方法,作用当前线程,释放当前线程持有的CPU资源,将CPU让给优先级不低于自己的线程用,调用后进入就绪状态。
发表于 2018-12-05 16:51:46
回复(0)
2
payall4u
``` java
public enum State {
NEW, // 新建,还没运行
RUNNABLE, // 正在运行或者失去时间片可以运行
BLOCKED, // 阻塞,只有进入或者重新进入synchronized方法或者语句块并没获得锁的时候才会进入
WAITING, // 等待,park或者sleep或join才会进入
TIMED_WAITING, // 限时等待,上面的加上时间限制
TERMINATED; // 线程结束
}
```
JDK对线程的定义,来自Thread.java中。
别再吹线程有什么就绪态,Linux内核中线程也没定义就绪态。
编辑于 2018-07-26 15:56:15
回复(0)
2
末日梨花
637页JAVA 核心技术
发表于 2017-08-24 20:23:14
回复(0)
2
LeoLiu940214
所以D也是错的
发表于 2017-08-19 18:10:58
回复(1)
1
李赤水
发表于 2022-06-25 09:10:05
回复(0)
1
若人生只如初见QAQ
我的理解:线程处在运行状态中,此时调用Thread.sleep()方法,线程发生阻塞,当sleep()方法结束后,线程继续执行,就是阻塞->运行啊
发表于 2022-02-25 20:29:11
回复(0)
1
Dobbin
运行态怎么直接到就绪呢!!这题D有问题,也是错误的
发表于 2017-08-21 12:35:09
回复(2)
0
geigeofferqiuqiule
俺也重新画了个
发表于 2024-05-23 20:18:28
回复(0)
0
牛客893902513号
m
编辑于 2024-03-04 18:41:02
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
Java
来自:
完美世界2017校招技...
上传者:
赞花婆
难度:
60条回答
6175收藏
12859浏览
热门推荐
相关试题
socket编程中,以下哪个soc...
Java
评论
(120)
来自
完美世界2017校招技术...
下面有关java classloa...
Java
评论
(72)
来自
完美世界2017校招技术...
假设栈的输入序列是7,6,2,1,...
栈
评论
(13)
来自
完美世界2017校招技术...
关于JDBC PreparedSt...
数据库
评论
(16)
来自
完美世界2017校招技术...
“连戏”在...
产品
运营
哔哩哔哩
行业常识
2020
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题