extern "C" void atomic_signal_fence (memory_order sync) noexcept;
值 | 記憶體順序 (memory order) | 描述 |
---|---|---|
memory_order_relaxed | 寬鬆 (Relaxed) | 呼叫沒有其他影響。 |
memory_order_consume | 消費 (Consume) | 建立一個 acquire 訊號柵 對指令進行排序,使其相對於同一執行緒中的上一個 release 或 sequentially consistent 操作。 |
memory_order_acquire | 獲取 (Acquire) | |
memory_order_release | 釋放 (Release) | 建立一個 release 訊號柵 對指令進行排序,使其相對於同一執行緒中的下一個 acquire 操作。 |
memory_order_acq_rel | 獲取/釋放 (Acquire/Release) | 建立一個既是 acquire 柵 又是 release 柵 的訊號柵。 所有指令相對於同一執行緒中的上一個 release 或 sequentially consistent 操作以及下一個 acquire 操作進行排序。 |
memory_order_seq_cst | 順序一致 (Sequentially consistent) | 建立一個 順序一致的獲取和釋放 訊號柵。 所有指令相對於同一執行緒中的其他 sequentially consistent 操作進行排序。 |