原来C语言中也有volatile,而且效果和Java中的是一样的。
记得Java中的volatile在对被修饰的变量进行写操作时有两个作用,这个作用是汇编中的lock指令实现的:
1、将当前处理器缓存行的数据协会到系统内存
2、协会内存的操作使得其他cpu里的缓存了该内存地址的数据无效
以下是C语言中关于volatile的解释:

原来C语言中也有volatile,而且效果和Java中的是一样的。
记得Java中的volatile在对被修饰的变量进行写操作时有两个作用,这个作用是汇编中的lock指令实现的:
1、将当前处理器缓存行的数据协会到系统内存
2、协会内存的操作使得其他cpu里的缓存了该内存地址的数据无效
以下是C语言中关于volatile的解释: