synchronized jvm实现思考

底层实现时,为什么使用了cxq队列和entryList双向链表?这里为什么不跟AQS中使用一个队列就行了,加了一个entryList的目的是为了什么?

个人理解这里多一个entryList,可能是用于减少频繁的cas操作。假设存在很多锁竞争时,进入entryList中的线程,在获取锁的线程中释放锁选取unpark线程时可以直接从List中取线程即可。

相关推荐
代码AI弗森17 小时前
一文理清楚“算力申请 / 成本测算 / 并发评估”
java·服务器·数据库
Old Uncle Tom18 小时前
OpenClaw 记忆系统 -- 记忆预加载
java·数据结构·算法·agent
小小小米粒18 小时前
Collection单列集合、Map(Key - Value)双列集合,多继承实现。
java·开发语言·windows
摇滚侠18 小时前
expdp 查看帮助
java·数据库·oracle
:12119 小时前
java基础
java·开发语言
曹牧20 小时前
Spring:@RequestMapping注解,匹配的顺序与上下文无关
java·后端·spring
daixin884820 小时前
cursor无法正常使用gpt5.5等模型解决方案
java·redis·cursor
韦禾水21 小时前
记录一次项目部署到tomcat的异常
java·tomcat
曦月合一21 小时前
树莓派安装jdk、tomcat、vnc、谷歌浏览器开机自启等环境配置
java·tomcat·树莓派
此剑之势丶愈斩愈烈21 小时前
openssl 自建证书
java