|
|
1
8
可能的影响很小。最可能的意图是允许用户通过
|
|
|
2
4
声明就是这样,您可以执行以下操作:
|
|
|
3
0
volatile参数阻止编译器进行优化,从而阻止对内存的读取。只要代码的可见效果相同,编译器就可以进行它喜欢的任何优化,但是在多线程场景中不考虑这些效果,只考虑单个线程。volatile关键字告诉编译器,这个变量可能被修改或从外部的未知源读取,编译器无法摆脱它或省略对它的内存访问。 |
|
|
4
-2
简而言之,volatile意味着“这个变量可能在这个程序之外被修改”。 换言之,这意味着变量的值可以在代码中更改,而无需任何相关指令。它通常用于低级别的I/O,例如,寄存器或缓冲区的值可以由硬件设置。 |
|
|
Fredericson · 如何避免在Java中使用volatile 8 年前 |
|
|
razorozx · C++如何获取父数据类型的sizeof? 8 年前 |
|
|
JavaKaKida · 单核cpu java中的易失性 8 年前 |
|
|
gstackoverflow · 顺序一致性挥发性解释 8 年前 |
|
|
AlastairG · volatile关键字如何影响静态常量数组? 8 年前 |