写volatile:jvm会将线程对应的本地内存中的共享变量刷新到主内存
读volatile:jvm会将线程对应的本地内存中的共享变量设置为无效,然后从主内存中获取
volatile写:在其前添加StoreStore屏障,其后添加StoreLoad屏障
volatile读:在其后添加LoadLoad屏障,LoadStore屏障
其中volatile写后添加的StoreLoad屏障为了保证volatile写与后序的可能的普通读/写重排序
京公网安备 11010502049817号