LockSupport的park/unpark对比wait/notify

wait/notify是Object的方法,且这两个方法必须与synchronized同时使用,否则会抛出IllegalMonitorException。而LockSupport无需加锁,直接调用其静态方法park就可以使当前线程进入阻塞状态。

Object中wait和notify方法必须要按顺序调用,如果因为线程调度问题导致线程A先调用notify方法而线程B后调用wait方法,那么会使线程A永远处于WAIT状态,形成死锁。

猜你喜欢

转载自blog.csdn.net/qq_29569183/article/details/113609118