线程的五种基本状态

线程的五种基本状态代表了线程的生命周期,五种基本状态分别为新建、就绪、运行、堵塞、死亡。堵塞:由于某种原因,正在运行的线程不得不让出CPU资源暂停运行,此时,线程为堵塞状态。

线程的五种基本状态

线程的五种基本状态代表了线程的生命周期,五种基本状态分别为新建、就绪、运行、堵塞、死亡。

新建:当new一个实现Runnable接口和继承Thread的类,线程就处于初始状态即为新建状态。

就绪:当线程执行start()方法时,线程就会处于就绪状态,等待获取CPU使用的时间。处于这个状态的线程一般有多数个,虚拟机决定执行那一个是随机的以及线程的优先级。

运行:当线程分配到cpu资源时,就进入运行状态了,即执行run()方法。

堵塞:由于某种原因,正在运行的线程不得不让出CPU资源暂停运行,此时,线程为堵塞状态。比如线程调用wait()方法、sleep()方法或者高优先级的线程介入等情况,线程不得已进入堵塞状态。

处于堵塞状态下的线程需要唤醒才能再次进入就绪状态,sleep()方法导致的堵塞需要等待睡眠时间过去,wait()方法导致的堵塞需要调用notify()方法唤醒。

死亡:当线程执行完毕(run()方法执行完)或者调用stop()方法时,线程就处于死亡状态。当线程处于死亡状态的时候,线程不能再复生即不可能再进入就绪状态等待执行。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/86337.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信