我的关注 |
¥0 什么是公平锁?什么是非公平锁?java
0

请问:公平锁和非公平锁的区别是?

佛法不二
修改
评论(0)
1个回答
0
采纳
  • 公平锁
    当有多个线程请求锁时,有一个线程获取锁,其他线程形成等待队列排队等待。新的线程请求锁时会先检查是否存在等待队列,如果存在则将本线程加入等待队列队尾。
  • 非公平锁
    新线程请求锁时,无视等待队列直接尝试获取锁,如果获取不到,则加入等待队列队尾。
    Java中的ReentrantLock默认的lock()方法采用的就是非公平锁。
采纳答案
大智若愚
修改
评论 (0)
撰写回答