AQS 锁导致cpu飙高原因和synchronized 是一样的吗

📅 2026/7/21 7:40:29 👁️ 阅读次数 📝 编程学习
AQS 锁导致cpu飙高原因和synchronized 是一样的吗

不完全一样,但本质都是“无效计算”消耗CPU,只是各自的“无效计算”形式不同。

为了让你彻底看透,我从底层机制CPU消耗路径两个维度来拆解。


一、先看结论:AQS 和synchronized的“耗电”路径不同

对比维度AQS锁(如ReentrantLock)synchronized(重量级锁)
CPU消耗大头用户态 (us)内核态 (sy)
主要耗电动作CAS自旋(空转)+ 大量读/写内存屏障操作系统线程阻塞/唤醒(上下文切换)
现象CPU被业务线程自己吃满CPU被操作系统内核调度吃满
Top特