volatile 能保证什么、不能保证什么
volatile 写会刷新到主内存,读会从主内存拿,并限制部分指令重排。它适合状态开关,不适合 count++ 这种读写组合。
需要互斥时用锁或原子类。能说清 happens-before 里 volatile 的位置即可,不必把整个 JMM 背完。
volatile 写会刷新到主内存,读会从主内存拿,并限制部分指令重排。它适合状态开关,不适合 count++ 这种读写组合。
需要互斥时用锁或原子类。能说清 happens-before 里 volatile 的位置即可,不必把整个 JMM 背完。