/**
* volatile 是java虛擬機(jī)提供輕量級(jí)的同步機(jī)制
* 1、保證可見性
* 2僧叉、不保證原子性
* 3、禁止指令重排
*
* JMM 約定
* 1、線程解鎖前移剪,必須要把共享變量立刻刷回主存
* 2副砍、線程枷鎖前惯退,必須讀取主存中最新的值到工作內(nèi)存中間
* 3碧绞、加鎖和解鎖是一把鎖
*
* 工作內(nèi)存祝钢,主存
* 8種操作
*
*/
image.png
image.png
image.png