ReentrantLock中的阻塞队列与唤醒机制

阻塞的状态不是被创建后就会进入阻塞形态的

 

 所以需要了解AbstractQueuedSynchronizer抽象类

 

 

 

 即进入无限期等待,即使其他线程调用了interrupt方法也无法将其唤醒,除非有其他线程释放了锁,并且该线程拿到了锁,才会走出accquireQueued方法返回

返回为true,表示有其他线程向他发送过中断信号,返回为false,表示没有其他线程向他发送过中断信号

 

 

 

 

 因为LockSupport.park(this);会发生被中断唤醒的情况,所以

 

posted @ 2023-01-28 13:14  不忘初心2021  阅读(71)  评论(0编辑  收藏  举报