Estrutura atomic_flag
Descreve um objeto que define e limpa atomicamente um sinalizador bool
. Operações em sinalizadores atômicos são sempre livres de bloqueio.
Sintaxe
struct atomic_flag;
Membros
Métodos públicos
Nome | Descrição |
---|---|
clear | Define o sinalizador armazenado como false . |
test_and_set | Define o sinalizador armazenado como true e retorna o valor de sinalizador inicial. |
Comentários
Objetos atomic_flag
podem ser passados para as funções não membro atomic_flag_clear, atomic_flag_clear_explicit, atomic_flag_test_and_set e atomic_flag_test_and_set_explicit. Eles podem ser inicializados usando o valor ATOMIC_FLAG_INIT
.
Requisitos
Cabeçalho:<atomic>
Namespace: std
atomic_flag::clear
Define o sinalizador bool
que é armazenado em *this
para false
, dentro das restrições memory_order especificadas.
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;
Parâmetros
Ordem
Uma memory_order.
atomic_flag::test_and_set
Define o sinalizador bool
que é armazenado em *this
para true
, dentro das restrições memory_order especificadas.
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;
Parâmetros
Ordem
Uma memory_order.
Valor de retorno
O valor inicial do sinalizador armazenado em *this
.