Seb*_* B. 5 c windows gcc atomic interlocked
我正在开发一个依赖 GCC 的atomic built-ins 的项目。在将项目移植到 Windows 时,我试图找到 GCC 原子的 Interlocked* 对应项。大多数操作实际上都可用,但我想念应用的操作__ATOMIC_CONSUME
和__ATOMIC_ACQ_REL
内存语义。由于 _*Barrier 内在函数已被弃用,Microsoft建议使用std::atomic
(例如atomic_thread_fence
)和类似的 C++11 标准。
我想知道:C 程序员应该做什么,我们如何在不使用 C++11 的情况下实现atomics
with__ATOMIC_CONSUME
和__ATOMIC_ACQ_REL
语义的可移植版本?
归档时间: |
|
查看次数: |
1563 次 |
最近记录: |