CPU调度线程
获取到锁
TERMINAL
1、线程执行完毕2、抛出异常
object.wait(timeout)Thread.sleep(mills)LockSupport.parkNanos(mills)LockSupport.parkUntil(deadline)
RUNNING
EXECUTE
WAITING
thread.start()
CPU时间片用尽
NEW
WAITING_TIME
object.notify()object.notifyAll()LockSupport.unpark(thread)
object.wait()LockSupport.park()
READY
BLOCK
进入synchronize块时,未抢到锁
object.notifyAll()LockSupport.unpark(thread)