volatile 保证什么,又不保证什么
volatile 解决的是多线程下的可见性与有序性,不保证复合操作的原子性。在 JMM 里它对应 happens-before 规则;在 HotSpot 里它落实为 acquire/release 语义的字段访问与 StoreLoad 屏障——不是锁的轻量替代品。 1 问题背景: …
继续阅读标签
共 2 篇
volatile 解决的是多线程下的可见性与有序性,不保证复合操作的原子性。在 JMM 里它对应 happens-before 规则;在 HotSpot 里它落实为 acquire/release 语义的字段访问与 StoreLoad 屏障——不是锁的轻量替代品。 1 问题背景: …
继续阅读1. 引言:为什么 synchronized 仍然重要 在 Java 并发编程中,ReentrantLock、StampedLock、ConcurrentHashMap 等工具层出不穷,但 synchronized 从未退场。它是 JVM 内置监视器锁(Monitor) 的语法糖 …
继续阅读