超越并发瓶颈:CAS与乐观锁的智慧应用 目录一、走进CAS(一)基本知识快速回顾(二)CAS 的原子性实际上是硬件 CPU 直接保证的Java 层次JVM 层次硬件层次总结(三)性能检测说明二、理解乐观锁(一)直观的理解(二)乐观锁适用于读多写少的情况的原因(三)悲观锁在读多写少的情况下也有冲突少的特点,为什么不适合呢?(四)案例:乐观锁实现余额更新三、整体理解(一)CAS机制和乐观锁思想(二)深入源码扩展四、总结干货分享,感谢您的阅读!synchronized是 Java 内置的同步机制,依赖 JVM 实现,通过进入和退出监视器锁(Monitor Lock)来保证线程的安全性。在高并发情况下,线程可能会频繁地在BLOCKED状态和RUNNABLE状态之间切换,导致用户态和内核态的频繁切换,从而影响性能。而Lock(如ReentrantLock)是基于 AQS 实现,通过使用自旋锁和非阻塞算法,减少了用户态和内核态的切换,提高了性能。​与 synchronized 的实现方式不同,AQS中很多数据结构的变化,都是依赖 CAS 进行操作的,而CAS 就是乐观锁的一种实现。