关注
synchronized 是重量级锁,基于操作系统互斥量,开销大,在 JDK6 对 synchronized 做了优化,有 4 个状态,级别从低到高:无锁、偏向锁、轻量级锁和重量级锁,级别随竞争升级,但不能降级。
偏向锁:为了在没有竞争的情况下减少锁开销,锁会偏向于第一个获得它的线程。一旦有其他线程尝试获取锁,偏向模式立即结束,同步按轻量级锁执行。
优点:加解锁不需要额外消耗。
场景:适用只有一个线程访问同步代码块的场景。
轻量级锁:在代码即将进入同步块时,使用 CAS 尝试把对象的 Mark Word 更新为指向锁记录的指针,如果失败就意味着存在竞争。如果出现两条以上线程竞争锁,轻量级锁将膨胀为重量级锁。
优点:程序响应速度快。
缺点:如果线程始终得不到锁会自旋消耗 CPU。
场景:追求响应时间、同步代码块执行快。
重量级锁:
优点:线程竞争不使用自旋不消耗CPU。缺点:线程阻塞,响应时间慢。
场景:追求吞吐量、同步代码块执行慢。
查看原帖
点赞 评论
相关推荐


思摩尔国际(SMOORE)
| 校招
| 35个岗位
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 软件开发春招备战日记 #
49318次浏览 375人参与
# 一觉醒来,秋招难度下降一万倍…… #
49275次浏览 469人参与
# 水滴春招 #
38992次浏览 604人参与
# 听劝,这个简历怎么改 #
33609次浏览 394人参与
# 你见过最离谱的招聘要求是什么? #
155873次浏览 1010人参与
# 面试被问“你的缺点是什么?”怎么答 #
19742次浏览 348人参与
# 你想留在一线还是回老家? #
19401次浏览 306人参与
# 我的2024小目标 #
48301次浏览 332人参与
# 我想象的实习vs现实的实习 #
257454次浏览 2086人参与
# 滴滴求职进展汇总 #
108435次浏览 870人参与
# 入职第四天,心情怎么样 #
14341次浏览 132人参与
# 第一份工作应该选高薪还是热爱? #
17222次浏览 141人参与
# 租房找室友 #
9203次浏览 63人参与
# 机械人晒出你的简历 #
47791次浏览 487人参与
# 互联网行业现在还值得去吗 #
2941次浏览 24人参与
# 硬件应届生薪资是否普遍偏低? #
61576次浏览 485人参与
# 技术岗笔试题求解 #
7317次浏览 33人参与
# 穿越回大一,你会做什么 #
16654次浏览 192人参与
# 材料人的华为红黑体验 #
20718次浏览 140人参与
# 创作灵感 #
92975次浏览 1441人参与
# 软开人,秋招你打算投哪些公司呢 #
65352次浏览 688人参与