命名空间
变体
操作

std::atomic_signal_fence

来自 cppreference.com
< cpp‎ | atomic
 
 
并发支持库
线程
(C++11)
(C++20)
this_thread 命名空间
(C++11)
(C++11)
(C++11)
协作取消
互斥
(C++11)
通用锁管理
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
条件变量
(C++11)
信号量
闩锁和屏障
(C++20)
(C++20)
期货
(C++11)
(C++11)
(C++11)
(C++11)
安全回收
(C++26)
危险指针
原子类型
(C++11)
(C++20)
原子类型的初始化
(C++11)(C++20 中已弃用)
(C++11)(C++20 中已弃用)
内存排序
atomic_signal_fence
(C++11)
原子操作的自由函数
原子标志的自由函数
 
定义在头文件 <atomic>
extern "C" void atomic_signal_fence( std::memory_order order ) noexcept;
(自 C++11)

根据 order 指示,在同一个线程上执行的线程和信号处理程序之间建立非原子和松散原子访问的内存同步顺序。这等效于 std::atomic_thread_fence,除了没有发出用于内存排序的 CPU 指令。仅根据 order 指示,抑制编译器对指令的重新排序。例如,具有发布语义的栅栏会阻止读写操作移动到后续写操作的后面,而具有获取语义的栅栏会阻止读写操作移动到先前读操作的前面。

内容

[编辑] 参数

order - 此栅栏执行的内存排序

[编辑] 返回值

(无)

[编辑] 示例

[编辑] 另请参阅

为给定原子操作定义内存排序约束
(枚举) [编辑]
通用的与内存顺序相关的栅栏同步基元
(函数) [编辑]
C 文档atomic_signal_fence