等待状态WAITING
其他线程唤醒Object.notify()Object.notifyAll()LockSupport.unpark(Thread)
结束TERMIATED
时间到后会被自动唤醒Object.notify()Object.notifyAll()LockSupport.unpark(Thread)
进入超时等待状态Thread.sleep(long millis)Object.wait(long timeout)Thread.join(long millis)LockSupport.parkNanos(long nanos)LockSupport.parkUntil(long deadline)
超时等待TIMED_WAITING
就绪执行RUNNABLE
开始NEW
阻塞状态BLOCKED
进入等待状态Object.wait()Thread.join()LockSupport.park()
等待锁释放
获取锁成功