多线程学习第三课

1、Volatile 实现过程

多线程学习第三课_第1张图片

多线程学习第三课_第2张图片

a、Volatile修饰的变量,会生成Lock前缀的操作指令,Lock前缀指令会引起处理器缓存回写到内存。
b、当CPU 1修改volatile变量,系统内存中值和其他CPU中的缓存失效是即时性的。
c、红色箭头的嗅探操作:嗅探一个处理器来检测其他处理器打算写内存地址,而这个地址当前处于共享状态,那么正在嗅探的处理器将使它的缓存行无效,在下次访问相同内存地址时,强制执行缓存行填充。(类似一个Listener操作)

你可能感兴趣的:(多线程)