在64位X86机器中读取/写双值原子
Is Read/Write double value atomic in 64-bit x86 machine
是否可以安全地假设读/写入双重值是在具有C/C 编程的64位计算机中的原子
我有两个共享内存的过程。过程1在C中,C 中的double值和过程2的作者是此值的读者。
no,如果您想要原子操作,请使用std::atomic<double>
C11
引入原子类型:C11 Atomics
运气好,C 也采用了这些来可移植性。如果不是,您可能必须依靠编译器扩展名:GCC Atomic incelenins
或简单地用静音锁定。
相关文章:
- 将应用程序从32位移植到64位时出现问题
- 64位机器上的C++内存对齐
- qmake:检测目标位宽(32 位或 64 位)
- 如何在 64 位 vb.net Windows 应用程序中引用 32 位 dll
- Qt 5.11.2 (Clang 8.0 (Apple), 64 位), 找不到 QJSEngine 文件
- 在 64 位边界上对齐C++结构数组?
- 如何为字符串生成唯一但一致的 N 位哈希(小于 64 位)?
- C++使用 adodb 在 64 位 Windows 7 中读取 Excel 文件?
- 使用读取[EBP 4]的MSVC内联ASM移植到64位
- 在64位X86机器中读取/写双值原子
- 在 64 位和 32 位窗口中读取注册表
- 读取 64 位整数二进制文件
- MSVC:在64位代码中读取特定的64位或32位寄存器(例如R10)
- 读取 64 位整数文件
- 32位到64位的C++二进制写入/读取
- Segfault在64位Debian上使用ifstream读取大文件
- HDF5在磁盘上将32位无符号int写入64位,并读取32位无信号int
- 互锁读取64位变量
- 无法在 Ubuntu 64 位操作系统中读取大于 2GB 的文件
- c++ 64位-无法读取符号:存档没有索引;执行ranlib命令添加