关注
synchronized 是重量级锁,基于操作系统互斥量,开销大,在 JDK6 对 synchronized 做了优化,有 4 个状态,级别从低到高:无锁、偏向锁、轻量级锁和重量级锁,级别随竞争升级,但不能降级。
偏向锁:为了在没有竞争的情况下减少锁开销,锁会偏向于第一个获得它的线程。一旦有其他线程尝试获取锁,偏向模式立即结束,同步按轻量级锁执行。
优点:加解锁不需要额外消耗。
场景:适用只有一个线程访问同步代码块的场景。
轻量级锁:在代码即将进入同步块时,使用 CAS 尝试把对象的 Mark Word 更新为指向锁记录的指针,如果失败就意味着存在竞争。如果出现两条以上线程竞争锁,轻量级锁将膨胀为重量级锁。
优点:程序响应速度快。
缺点:如果线程始终得不到锁会自旋消耗 CPU。
场景:追求响应时间、同步代码块执行快。
重量级锁:
优点:线程竞争不使用自旋不消耗CPU。缺点:线程阻塞,响应时间慢。
场景:追求吞吐量、同步代码块执行慢。
查看原帖
点赞 评论
相关推荐
查看7道真题和解析 点赞 评论 收藏
分享
贴心的火龙果风度翩翩:公司名字很符合 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 月薪多少能在一线城市生存 #
78719次浏览 531人参与
# 你会为了工作牺牲生活吗? #
60693次浏览 424人参与
# 百度秋招 #
38000次浏览 334人参与
# 如果再来一次,你还会选择这个工作吗? #
704775次浏览 5727人参与
# 秋招吐槽大会 #
7239次浏览 86人参与
# offer帮选 #
4347199次浏览 26371人参与
# 技术转行的心路历程 #
72861次浏览 744人参与
# 你找工作想离家近 or 离家远? #
1378次浏览 32人参与
# 总结:哪家公司最喜欢泡池子 #
151288次浏览 543人参与
# 小米编程考试 #
23119次浏览 145人参与
# 你小时候最想从事什么职业 #
134472次浏览 1991人参与
# 互联网行业现在还值得去吗 #
38225次浏览 282人参与
# 虾皮开奖 #
45386次浏览 212人参与
# 滴滴歧视残疾人HR被开除 #
23742次浏览 86人参与
# 京东工作体验 #
19253次浏览 113人参与
# 26届的你们有几段实习? #
153141次浏览 1068人参与
# 25届非技术实习投递记录 #
137239次浏览 1001人参与
# 落户对你的求职选择影响有多大 #
29995次浏览 101人参与
# 机械人,秋招第一次笔试的企业是哪家? #
79682次浏览 611人参与
# 你认为工作的意义是什么 #
210788次浏览 1354人参与
# 大疆求职进展汇总 #
631249次浏览 4262人参与