Espacios de nombres
Variantes
Acciones

ATOMIC_FLAG_INIT

De cppreference.com
< cpp‎ | atomic
 
 
 
Definido en el archivo de encabezado <atomic>
#define ATOMIC_FLAG_INIT /* definido por la implementación */
(desde C++11)
(en desuso en C++20)

Define el inicializador que se puede usar para inicializar std::atomic_flag para borrar el estado (falso) con la declaración std::atomic_flag v = ATOMIC_FLAG_INIT;. No se especifica si se puede utilizar con otros contextos de inicialización.

Si la bandera tiene duración de almacenamiento estática, esta inicialización es estática.

Esta es la única forma de inicializar std::atomic_flag a un valor definido: el valor que se mantiene después de cualquier otra inicialización no está especificado.

(hasta C++20)

Esta macro ya no es necesaria y está en desuso, ya que el constructor por defecto de std::atomic_flag la inicializa para borrar el estado.

(desde C++20)

[editar] Ejemplo

#include <atomic>
 
std::atomic_flag static_flag = ATOMIC_FLAG_INIT; // inicialización estática,
// se garantiza que estará disponible durante la
// inicialización dinámica de objetos estáticos
 
int main()
{
    std::atomic_flag automatic_flag = ATOMIC_FLAG_INIT; // se garantiza que funciona
//    std::atomic_flag another_flag(ATOMIC_FLAG_INIT);  // sin especificar
}


[editar] Véase también

El tipo atómico booleano libre de bloqueo.
(clase) [editar]
Documentación de C para ATOMIC_FLAG_INIT