load:从内存读到寄存器 ,也就是加载操作
store:从寄存器写入到内存,就就是存储操作
Further Reading : load store 啥意思
内存屏障类型表
StoreLoad Barriers是一个“全能型
”的屏障,它同时具有其他3个屏障的效果。现代的多处理器大多支持该屏障(其他类型的屏障不一定被所有处理器支持)。执行该屏障开销会很昂贵
,因为当前处理器通常要把写缓冲区中的数据全部
刷新到内存中(Buffer Fully Flush)。
-----------------------------------------------------------------------------摘自 书名:Java并发编程的艺术 作者:方腾飞;魏鹏;程晓明
LoadLoad:你先读我再读
LoadStore:你先读我再存,保证你读之前的,不被我存的影响
StoreStore:你先存我再存,决不能让你覆盖我
StoreLoad:你读完写完,我再读写,换句话说等您处理妥妥的我再上手,一点也不粘包
使用场景:
场景1、StoreStore:你先存我再存,决不能让你覆盖我,宁教我负天下人,休教天下人负我,及其自私
场景2、LoadLoad和LoadStore一般一起使用,表示我要读了以后,你才可以读写,我没读你连读都不行,就这么矫情,不仅自私还霸道
场景3、StoreLoad:表示我读完写完,你才可以读写,必须我做完了,你才可以开始,不仅自私还霸道,而且有种阶级感