001-Java线程状态
2021-05-27 19:39:36 0 举报
Java线程状态变迁图
作者其他创作
大纲/内容
Thread.sleep(long):让出CPU执行权,但不会释放锁Object.wait(long):让出CPU执行权,且释放锁
Object.notify()Object.notifyAll()LockSupport.unpark(Thread)
运行状态(RUNABLE)
TERMINATED
Thread.start()
BLOCKED
TIME_WAITING
等待进入 Synchronized 方法或代码块(等待锁)
运行RUNNING
初始状态(New)
yield系统调度
Object.notify()Object.notifyAll()LockSupport.unpark(Thread)超时时间到
包括:阻塞式IO、中断yield:向调度程序暗示,当前线程愿意让出CPU, 调度程序可忽略此暗示
系统调度
New Thread() 但是还没有调用 start()
Thread.join()Object.wait()LockSupport.park()
获取到锁
就绪READY
Thread.join(long)Thread.sleep(long)Object.wait(long)LockSupport.parkNanos()LockSupport.parkUntil()
WAITING
0 条评论
下一页
为你推荐
查看更多