话不多说,直接上图,绝对简单明了,通俗易懂
根据上边的图片,简单描述一下
线程有以下几种状态
1、new 新建状态(此时线程刚被new出来,还没执行start()方法)
2、Runable 运行状态,有执行资格又有执行权,但它可能正在等待来自操作系统的其他资源,例如处理器。
3、Blocked 阻塞状态,也称临时状态,有执行资格,但是没有执行权,需要等待执行权
4、冻结状态,有的书上又将冻结细分为Waiting 无限期等待和Timed_Waiting 有限期等待
Waiting 无限期等待状态 是用wait方法,线程自己不会醒,需要用notify方法或者其他方法来唤醒
Timed_Waiting 有限期等待状态 是用sleep方法传入一个要睡眠的时间,时间到了以后线程自己会醒
冻结状态的线程是没有执行资格,更没有执行权
5、TERMINATED 终止消亡状态:表示该线程已经执行完毕。
铁子们,如果觉得文章对你有所帮助,可以点关注,点赞
也可以关注下公众号:扫码或 wx搜索:“聊5毛钱的java”,欢迎一起学习交流,关注公众号可领取博主的Java学习视频+资料,保证都是干货
3Q~