Java线程状态变迁图
2022-04-17 16:31:22 15 举报
Java线程状态,状态转换方法
作者其他创作
大纲/内容
等待(WAITING)
Object.notify()Object.notifyAll()LockSupport.unpark(Thread)
获取到锁
阻塞在Lock接口的线程是等待状态,因为Lock接口中阻塞的实现是基于LockSupport中的方法
等待状态的线程需要其他线程介入才能返回运行状态,超时等待状态的线程,除了可以通过其他线程介入返回外,等待达到设置时长也可以自动变为运行状态
调用Thread.start()
Object.wait(long)Thread.join(long)Thead.slepp(long)LockSupport.parkkNanos()LockSupport.parkUntil()
初始(NEW)
系统调 度 yield()
系统调度(分配到时间片)
运行中(RUNNING)
任务执行完成
等待进入Syncronized方法等待进入Syncronized代码块
超时等待(TIMED_WATING)
就绪(READY)
阻塞(BLOCKED)
运行(RUNNABLE)
实例化线程
Object.wait()Object.join()LockSupport.park()
终止(TERMINATED)
Object.notify()Object.notifyAll()LockSupport.unpark(Thread)达到时长
收藏
0 条评论
回复 删除
下一页