腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
技术圈
专栏作者
举报
99
文章
94015
阅读量
13
订阅数
订阅专栏
申请加入专栏
全部文章(99)
编程算法(36)
神经网络(14)
机器学习(12)
深度学习(12)
人工智能(11)
协议(10)
java(8)
python(8)
数据库(8)
sql(7)
spark(7)
http(6)
mongodb(5)
数据结构(5)
NLP 服务(4)
c++(4)
node.js(4)
mapreduce(4)
云数据库 MongoDB(4)
分布式(4)
hadoop(4)
linux(3)
批量计算(3)
存储(3)
决策树(3)
Elasticsearch Service(3)
其他(2)
javascript(2)
xml(2)
git(2)
文件存储(2)
机器翻译(2)
yarn(2)
缓存(2)
jvm(2)
正则表达式(2)
推荐系统(2)
大数据(2)
bash(1)
scala(1)
jquery(1)
json(1)
nosql(1)
postgresql(1)
api(1)
搜索引擎(1)
ubuntu(1)
apache(1)
命令行工具(1)
TDSQL MySQL 版(1)
腾讯云测试服务(1)
渲染(1)
游戏(1)
开源(1)
爬虫(1)
网络安全(1)
yum(1)
面向对象编程(1)
hashmap(1)
selenium(1)
tcp/ip(1)
scrapy(1)
迁移学习(1)
数据分析(1)
hbase(1)
云计算(1)
cat(1)
count(1)
distribution(1)
hidden(1)
init(1)
lda(1)
object(1)
shutdown(1)
state(1)
word(1)
遍历(1)
动态规划(1)
连接(1)
面试(1)
统计(1)
压缩(1)
搜索文章
搜索
搜索
关闭
Java多线程--线程各状态如何进行切换
编程算法
jvm
其他
1、新建状态(New):新创建了一个线程对象。 2、就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于可运行线程池中,变得可运行,等待获取CPU的使用权。 3、运行状态(Running):就绪状态的线程获取了CPU,执行程序代码。 4、阻塞状态(Blocked):阻塞状态是线程因为某种原因放弃CPU使用权,暂时停止运行。直到线程进入就绪状态,才有机会转到运行状态。阻塞的情况分三种: (一)、等待阻塞:运行的线程执行wait()方法,JVM会把该线程放入等待池中。 (二)、同步阻塞:运行的线程在获取对象的同步锁时,若该同步锁被别的线程占用,则JVM会把该线程放入锁池中。 (三)、其他阻塞:运行的线程执行sleep()或join()方法,或者发出了I/O请求时,JVM会把该线程置为阻塞状态。当sleep()状态超时、join()等待线程终止或者超时、或者I/O处理完毕时,线程重新转入就绪状态。 5、死亡状态(Dead):线程执行完了或者因异常退出了run()方法,该线程结束生命周期。
张凝可
2019-08-22
1.4K
0
Java 同步 synchronized与lock
编程算法
jvm
实现线程同步一个使synchronized关键字,一个是通过对象lock. Lock 在jdk 1.5才出现的,在一定程度上缓解了synchronized同步所带来的性能下降。
张凝可
2019-08-22
432
0
没有更多了
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
立即发文
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档