次の方法で共有


atomic_fetch_sub 関数

atomic のオブジェクトに格納されている既存の値から値を減算します。

template <class Ty>
inline Ty *atomic_fetch_sub(
   volatile atomic<Ty*> *Atom,
   Ty Value
) _NOEXCEPT;

template <class _Ty>
inline _Ty *atomic_fetch_sub(
   atomic<_Ty*> *_Atom,
   Ty _Value
) _NOEXCEPT;

パラメーター

  • Atom
    atomic の格納するオブジェクトへのポインター。Ty型の値。

  • Value
    Ty 型の値。

戻り値

引いた結果を含む Ty のオブジェクト。

解説

atomic_fetch_sub 関数は、アトミックに memory_order_seq_cst メモリの制約を使用して Atomの Value を、格納されている値から減算するに read-modify-write の操作を実行します。

アトミック型が atomic_addressの場合、Value に型 ptrdiff_t があり、操作は char *として格納されているポインターを処理します。

必要条件

ヘッダー: の分割

名前空間: std

参照

関連項目

<atomic>

アトミック構造

atomic_fetch_add_explicit 関数