volatile内存语义的实现

为了实现volatile的内存语义,编译器在生成字节码时,会把指令序列中插入内存屏障来禁止特定类型的处理器重排序。下面是基于保守策略的JMM内存屏障插入策略 在每个volatile写操作前面插入一个StoreStore屏障 在每个Volatile写操作后面插进入一个StoreLoad屏障 在每个volatile读操作的后面插入一个LoadLoad屏障 在每个volatile读操作的后面插入Load
相关文章
相关标签/搜索