文章内容收录到个人网站,方便阅读:http://hardyfish.top/乐观锁不加互斥锁阻塞线程,而是让线程先读数据并计算,提交写入时检查版本是否被别人改过。如果被改过就失败并重试/放弃,核心是检测冲突而不是预防冲突。适用:读多写少、冲突概率低的场景(热点不高)。不适用:高冲突时会出现重试风暴。内存并发(Java 层):CAS/原子类/StampedLock方案 A1:CAS 原子类(Atomic) AtomicInteger stock = new AtomicInteger(100); boolean decOnce(int n) { while (true) { int cur = ...