Compartilhar via


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.

Confira também

<atomic>