次の方法で共有


atomic_flag 構造体

bool フラグをアトミックに設定およびクリアするオブジェクトについて記述します。 アトミック フラグの操作は常にロック制御不要です。

構文

struct atomic_flag;

メンバー

パブリック メソッド

名前 説明
clear 格納されたフラグを false に設定します。
test_and_set 格納されたフラグを true に設定し、フラグの初期値を返します。

解説

atomic_flag オブジェクトは、atomic_flag_clearatomic_flag_clear_explicitatomic_flag_test_and_set、および atomic_flag_test_and_set_explicit の非メンバー関数に渡すことができます。 これらは、ATOMIC_FLAG_INIT の値を使用して初期化できます。

要件

ヘッダー:<atomic>

名前空間: std

atomic_flag::clear

指定された memory_order の制約内で、*this に格納されている bool フラグを false に設定します。

void atomic_flag::clear(memory_order Order = memory_order_seq_cst) volatile noexcept;
void atomic_flag::clear(memory_order Order = memory_order_seq_cst) noexcept;

パラメーター

受注
memory_order

atomic_flag::test_and_set

指定された memory_order の制約内で、*this に格納されている bool フラグを true に設定します。

bool atomic_flag::test_and_set(memory_order Order = memory_order_seq_cst) volatile noexcept;
bool atomic_flag::test_and_set(memory_order Order = memory_order_seq_cst) noexcept;

パラメーター

受注
memory_order

戻り値

*this に格納されているフラグの初期値。

関連項目

<atomic>