首页 > 其他 > 详细

volatile缓存可见性实现原理

时间:2021-05-18 16:15:19      阅读:29      评论:0      收藏:0      [点我收藏+]

底层实现主要是通过汇编lock前缀指令,它会锁定这块内存区域的缓存(缓存行锁定),并写会到主内存

IA-32和Intel64架构开发者手册对lock指令的解释:

1)会将当前处理器缓存行的数据立即回写到系统内存

2)这个写回内存的操作会引起在其他cpu里缓存了该内存地址的数据无效(MESI协议),所以数据要回主内存读取

3)提供内存屏障功能,使lock前后指令不能重排序

技术分享图片

 

 

技术分享图片

 

技术分享图片

 

volatile缓存可见性实现原理

原文:https://www.cnblogs.com/gao1991/p/14780755.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!