名前空間
変種
操作

atomic_store, atomic_store_explicit

提供: cppreference.com
< c‎ | atomic
ヘッダ <stdatomic.h> で定義
void atomic_store( volatile A* obj , C desired);
(1) (C11およびそれ以降)
void atomic_store_explicit( volatile A* obj, C desired, memory_order order );
(2) (C11およびそれ以降)

obj の指すアトミック変数の値を desired でアトミックに置き換えます。 この操作はアトミック書き込み操作です。

1つめのバージョンは memory_order_seq_cst に従ってメモリを順序付けし、2つめのバージョンは order に従ってメモリを順序付けします。 ordermemory_order_relaxedmemory_order_release または memory_order_seq_cst のいずれかでなければなりません。 そうでなければ動作は未定義です。

これはすべてのアトミックオブジェクト型 A に対して定義される総称関数です。 引数は非 volatile と volatile (メモリマップド I/O など) 両方のアトミック変数のアドレスを受理するための volatile アトミック型へのポインタです。 CA に対応する非アトミック型です。

目次

[編集] 引数

obj - 変更に対するメモリ同期順序付け

[編集] 戻り値

(なし)

[編集] 参考文献

  • C11 standard (ISO/IEC 9899:2011):
  • 7.17.7.1 The atomic_store generic functions (p: 282)

[編集] 関連項目

アトミックオブジェクトから値を読み込みます
(関数) [edit]
atomic_store, atomic_store_explicitC++リファレンス