- synchronized(waiting to enter monitor)等待获得锁
- synchronized(enter monitor)获得锁
- wait( )
join( )
LockSupport.park( )- notyfy( )、notifyAll( )、interrupt( )且获得锁
子线程结束(对应join( ))
LockSupport.unpark( )- Thread.sleep(millis)
wait(long)
join(long)
LockSupport.parkNanos(nanos)
LockSupport.parkUntil(deadline)- Time Waiting结束
notify( )、notifyAll( )
子线程结束(对应join( ))
LockSupport.unpark( )
interrupt( )且获得锁- Time Waiting结束
notify( )、notifyAll( )
interrupt( )且等待获得锁- notify( )、notifyAll( )
interrupt( )且等待获得锁
Java线程状态分析/线程状态转换图参考:https://blog.csdn.net/shi2huang/article/details/80289155