首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
公平锁与非公平锁有什么区别?
[问答题]
公平锁与非公平锁有什么区别?
添加笔记
求解答(0)
邀请回答
收藏(2)
分享
纠错
3个回答
添加回答
0
acodebird
非公平锁和公平锁的区别
1.非公平锁,不考虑线程请求锁的顺序,谁有能力谁获取锁,性能较好,减少线程上下文切换
2.公平锁,考虑线程请求锁的顺序,讲究一个先到先得,性能较差,线程上下文切换比较多
发表于 2025-07-25 22:52:06
回复(0)
0
牛客152771347号
公平锁按请求顺序分配锁,保证线程先到先得;非公平锁允许插队,可能出现线程饥饿但吞吐量更高。公平锁通过队列严格维护顺序,获取时检查是否有等待队列;非公平锁直接尝试抢占锁,失败后才入队。非公平锁减少线程切换开销,性能更好但公平性差。
发表于 2025-05-20 23:04:23
回复(0)
0
1027bb
公平锁是指线程获取资源公平锁是指每个线程公平的去获取锁,通过一个先进线程的队列,线程按顺序去竞争锁,当锁释放释放时,唤醒队列头部线程去竞争获取锁。非公平锁是线程一开始可以通过cas尝试去竞争获取锁,获取失败后则进入到队列中等待,当线程释放锁,唤醒队列中线程去获取锁,可能是随机,reentranlock可以是公平也可以是非公平锁,synchronize只有非公平锁
发表于 2025-05-13 08:51:41
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
难度:
3条回答
2收藏
73浏览
热门推荐
相关试题
在 非严格模式下 javaScri...
Javascript
评论
(1)
关于语句 A a = new A(...
Java
评论
(1)
在大规模分布式训练大型语言模型时,...
大模型开发
评论
(1)
当一个系统应该独立于它的产品创建,...
设计模式
评论
(2)
哪些情况建立索引会降低查询效率( )
数据库
评论
(2)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题