Java线程状态图
2025-12-04 23:19:22 0 举报
Java线程状态图,使用UML状态图绘制,体现线程状态的切换原因,图形旁边增加备注使图更易理解
作者其他创作
大纲/内容
Waiting
wait()/join()
Runnable
terminated
r运行结束/异常退出
Running
* New: 新建状态* Runnable: 就绪状态(可运行状态),可运行状态不代表线程在运行,需要等待从操作系统获得资源* Running: 运行状态* Blocked: 阻塞(或叫同步阻塞),处于此状态的现成正在等待获得锁* Waiting: 等待(或叫等待阻塞),调用wait()/join()/park()会使线程进入此状态,处于等待状态的线程需要被其他线程唤醒,通过notify()/notifyAll()* Timed_Waiting: 延时等待,即指定时间的Waiting,调用wait(time)/join(time)/sleep()/parkNanos()/parkUntil()会使线程进入此状态,处于延时等待状态的线程会等待具体的时间,时间到后自动唤醒,通过wait(time)进入的线程也可以被notify()/notifyAll()唤醒
获得cpu
New
获取到锁
Timed_Waiting
yield()
start()
notify()/notifyAll()
Blocked
wait(time)/join(time)/sleep()
synchronized
sleep()结束/join()完成/notify()/notifyAll()
0 条评论
下一页