+
95
-

Reentrantlock中的公平锁和非公平锁的底层是怎么实现的?

Reentrantlock中的公平锁和非公平锁的底层是怎么实现的?


网友回复

+
15
-

公平锁与非公平锁相同点

底层都是通过AQS进行排队实现的,不管是公平锁还是非公平锁,一旦没有竞争到锁,都会进行排队,当锁释放时,都是唤醒排在最前面的线程。

公平锁与非公平锁不同点

线程使用 lock() 方法加锁时

如果是公平锁,会先检查 AQS队列中...

点击查看剩余70%

我知道答案,我要回答