在64位X86机器中读取/写双值原子

Is Read/Write double value atomic in 64-bit x86 machine

本文关键字:读取 64位 X86 机器      更新时间:2023-10-16

是否可以安全地假设读/写入双重值是在具有C/C 编程的64位计算机中的原子

我有两个共享内存的过程。过程1在C中,C 中的double值和过程2的作者是此值的读者。

no,如果您想要原子操作,请使用std::atomic<double>

C11引入原子类型:C11 Atomics

运气好,C 也采用了这些来可移植性。如果不是,您可能必须依靠编译器扩展名:GCC Atomic incelenins

或简单地用静音锁定。