Espacios de nombres
Variantes

std::stop_source

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
 
 
<tbody> </tbody>
Definido en el archivo de encabezado <stop_token>
class stop_source;
(desde C++20)

La clase stop_source proporciona los medios para emitir una solicitud de detención, como para la cancelación de un std::jthread. Una solicitud de detención realizada para un objeto stop_source es visible para todos los stop_source y std::stop_token del mismo estado de detención asociado; cualquier std::stop_callback registrado para los std::stop_token asociados se invocarán, y cualquier objeto std::condition_variable_any en espera de los std::stop_token asociados se despertarán.

Una vez que se solicita una detención, no se puede retirar. Las solicitudes de detención adicionales no tienen ningún efecto.

Funciones miembro

Construye un nuevo objeto stop_source
(función miembro pública) [editar]
Destruye el objeto stop_source
(función miembro pública) [editar]
Asigna el objeto stop_source
(función miembro pública) [editar]
Modificadores
Genera una solicitud de detención al estado de detención asociado, si es que lo hay
(función miembro pública) [editar]
Intercambia dos objetos stop_source
(función miembro pública) [editar]
Observadores
Devuelve un stop_token para el estado de detención asociado
(función miembro pública) [editar]
Comprueba si al estado de detención asociado se le ha solicitado que se detenga
(función miembro pública) [editar]
Comprueba si al estado de detención asociado se le puede solicitar que se detenga
(función miembro pública) [editar]

Funciones no miembro

Compara dos objetos std::stop_source
(función) [editar]
Especializa el algoritmo std::swap
(función) [editar]

Constantes auxiliares

Una instancia de std::nostopstate_t para ser usada en el constructor stop_source
(constante) [editar]

Clases auxiliares

Tipo marcador de posición para ser usado en el constructor de stop_source
(clase) [editar]

Notas

Para los propósitos de la cancelación de std::jthread, el objeto stop_source debe obtenerse del objeto std::jthread usando get_stop_source(), o la detención deberá solicitarse directamente del objeto std::jthread usando request_stop(). Esto luego usará el mismo estado de detención asociado que se pasó al argumento de función invocada del std::jthread es decir, la función que se está ejecutando en su hilo.

Sin embargo, para otros usos, se puede construir un stop_source por separado usando el constructor por defecto, que crea un nuevo estado de detención.

Ejemplo