/volatile(volatile 关键字解释)
指定 volatile 关键字如何将被解释。
/volatile:{iso|ms}
实参
/volatile:iso
选择强 volatile 语义所定义的 ISO C++ 标准语言。 获取/版本语义不能保证在变量的访问。 如果编译器针对 ARM,这是 volatile的默认值解释。/volatile:ms
选择 Microsoft 扩展的 volatile 语义,将 ISO C++ 标准语言以外的内存排序的保证。 获取/版本语义确保在变量的访问。 但是,此选项还强制编译器将生成硬件内存障碍,可以添加在 ARM 和其他弱的内存命令的体系结构的重大开销。 如果编译器目标 (ARM 的任何平台,这是 volatile的默认值解释。
备注
强烈建议您使用显式同步基元使用 /volatile:iso 和编译器内部,在处理在线程之间共享的内存时。 有关更多信息,请参见volatile (C++)。
如果端口现有代码还是在项目,其元更改此选项可用于使警告 C4746 标识受在语义上的差异的影响代码的位置。
没有等效 #pragma 控件此选项。
在 Visual Studio 中设置 /volatile 编译器选项
打开项目的**“属性页”**对话框。 有关更多信息,请参见如何:打开项目属性页。
选择 C/C++ 文件夹。
选择 命令行 属性页。
在 其他选项 框中,添加 /volatile: ISO 或 /volatile: 毫秒。