volatile 关键字用法?不加就一定会出错?

2020-01-10 19:46发布

如题,一直有个疑惑,也没有问,volatile用法,既然不加不会出错(有一些变量确实不加也没问题),为什么要加?
24条回答
darkness27
1楼 · 2020-01-11 08:14.采纳回答
要看变量有没可能被中断或其他线程改变。如果有,而且这个变量被编译器优化过,那可能就导致它某次使用的时候使用缓存里的值而没有重新读取,然而真正的值已被改变过。这就出错了。
huangguimina4
2楼-- · 2020-01-11 00:04
 精彩回答 2  元偷偷看……
liugu
3楼-- · 2020-01-11 01:28
有的编译器,会给优化掉
onepower
4楼-- · 2020-01-11 02:26
你不选优化, 就不会出错
hefq
5楼-- · 2020-01-11 05:24
联合体不加也会出问题
go2deathward
6楼-- · 2020-01-11 10:35
 精彩回答 2  元偷偷看……
pengchhui
7楼-- · 2020-01-11 14:27
试过调试算法的时候选了较高的优化,有几个函数有相同的变量,一运行就出错了

一周热门 更多>