Espacios de nombres
Variantes

std::barrier<CompletionFunction>::arrive_and_drop

De cppreference.com
 
 
Biblioteca de apoyo de concurrencia
Hilos
(C++11)
(C++20)
Espacio de nombres this_thread
(C++11)
(C++11)
(C++11)
Cancelación cooperativa
Exclusión mutua
(C++11)
Gestión genérica de bloqueo
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
Variables de condición
(C++11)
Semáforos
Pestillos y barreras
(C++20)
(C++20)
Futuros
(C++11)
(C++11)
(C++11)
(C++11)
Recuperación segura
(C++26)
Punteros de riesgo
Tipos atómicos
(C++11)
(C++20)
Inicialización de tipos atómicos
(C++11)(en desuso en C++20)
(C++11)(en desuso en C++20)
Orden de memoria
Funciones independientes para operaciones atómicas
Funciones independientes para indicadores atómicos
 
 
void arrive_and_drop();
(desde C++20)

Disminuye en uno el conteo inicial esperado para todas las fases posteriores y, a continuación, decrementa en uno el conteo esperado para la fase actual.

Esta función se ejecuta atómicamente. La llamada a esta función fuertemente sucede-antes que el inicio del paso de finalización de fase para la fase actual.

El comportamiento no está definido si el conteo esperado para la fase actual es cero.

Parámetros

(Ninguno)

Valor de retorno

(Ninguno)

Excepciones

Lanza std::system_error con un código de error permitido para tipos mutex cuando suceden errores.

Notas

Esta función puede hacer que se inicie el paso de finalización de la fase actual.

Si el conteo esperado actual es cero antes de llamar a esta función, el conteo inicial esperado para todas las fases posteriores también es cero, lo que significa que el objeto barrier no se puede reutilizar.

Ejemplo