一尘不染

Java易失性和缓存一致性

java

如果高速缓存一致性是在硬件级别实现的,为什么我们需要可变的?任何内核/处理器都应该获得最新值吗?

还是完全解决了另一个问题?


阅读 237

收藏
2020-12-03

共1个答案

一尘不染

高速缓存一致性可以在处理器级别实现,但是,除非处理器内存模型保证顺序一致性(在大多数现代体系结构中不是这种情况),否则只有在需要时才会获得高速缓存一致性。

这就是volatile的含义:它要求JVM生成相关的机器指令,这些指令将要求处理器将其缓存与主内存同步。

2020-12-03