namespace std {
extern "C"
void
atomic_signal_fence(memory_order order) noexcept; // (1) C++11
extern "C"
constexpr void
atomic_signal_fence(memory_order order) noexcept; // (1) C++26
}
概要
同一スレッド内のシグナルハンドラ実行との間でのみ有効なメモリフェンスを発行する。
効果
この関数は、スレッドと、そのスレッド上で処理されるシグナルハンドラとの間でのみ、その効果が有効である、という点を除いてatomic_thread_fence(order)
と同じ効果を持つ。
戻り値
なし
例外
投げない
例
出力
バージョン
言語
- C++11
処理系
- Clang: ??
- GCC: 4.7.0 ✅
- ICC: ??
- Visual C++: 2012 ✅, 2013 ✅
参照
- How to correctly use std::atomic_signal_fence()?
- P3309R3
constexpr atomic
andatomic_ref
- C++26で
constexpr
に対応した
- C++26で