Compartir a través de


La clase cancellation_token

La clase cancellation_token representa la capacidad para determinar si se ha solicitado la cancelación de alguna operación. Se puede asociar un determinado símbolo con un objeto task_group, structured_task_group o task para proporcionar una cancelación implícita. Este token también puede sondearse para la cancelación o puede hacer que se registre una devolución únicamente si se cancela el objeto cancellation_token_source asociado.

Sintaxis

class cancellation_token;

Miembros

Constructores públicos

Nombre Descripción
token de cancelación
~cancellation_token Destructor

Métodos públicos

Nombre Descripción
deregister_callback Elimina un callback previamente registrado mediante el método register, utilizando el objeto cancellation_token_registration devuelto en el momento del registro.
es_cancelable Devuelve una indicación de si este token se puede cancelar o no.
es_cancelado Devuelve true si el token se ha cancelado.
none Devuelve un token de cancelación que nunca puede estar sujeto a la cancelación.
register_callback Registra una función callback con el token. La devolución de llamada se realizará únicamente si se cancela el token. Tenga en cuenta que si el token ya se canceló cuando se invoca este método, el callback se ejecutará inmediatamente y de forma sincrónica.

Operadores públicos

Nombre Descripción
operator!=
operator=
operator==

Jerarquía de herencia

cancellation_token

Requisitos

Encabezado: pplcancellation_token.h

Espacio de nombres: simultaneidad

~token_de_cancelación

~cancellation_token();

token_de_cancelación

cancellation_token(const cancellation_token& _Src);

cancellation_token(cancellation_token&& _Src);

Parámetros

_Src
El token de cancelación que se va a copiar o mover.

deregister_callback

Elimina un callback registrado anteriormente mediante el método register basado en el objeto cancellation_token_registration devuelto en el momento del registro.

void deregister_callback(const cancellation_token_registration& _Registration) const;

Parámetros

_Registration
Objeto cancellation_token_registration que se corresponde con la devolución de llamada cuyo registro se va a cancelar. Este símbolo se debe haber devuelto anteriormente desde una llamada al método register.

es_cancelable

Devuelve una indicación de si este token se puede cancelar o no.

bool is_cancelable() const;

Valor devuelto

Indicación de si este token se puede cancelar o no.

is_canceled

Devuelve true si el token se ha cancelado.

bool is_canceled() const;

Valor devuelto

El valor true si el token se ha cancelado; de lo contrario, el valor false.

Ninguno

Devuelve un token de cancelación que nunca puede estar sujeto a la cancelación.

static cancellation_token none();

Valor devuelto

Token de cancelación que no puede cancelarse.

operator!=

bool operator!= (const cancellation_token& _Src) const;

Parámetros

_Src
cancellation_token que se va a comparar.

Valor devuelto

operador =

cancellation_token& operator= (const cancellation_token& _Src);

cancellation_token& operator= (cancellation_token&& _Src);

Parámetros

_Src
El cancellation_token a asignar.

Valor devuelto

operator==

bool operator== (const cancellation_token& _Src) const;

Parámetros

_Src
cancellation_token que va a ser comparado.

Valor devuelto

registrar_función_de_retrollamada

Registra una función callback con el token. La devolución de llamada se realizará únicamente si se cancela el token. Tenga en cuenta que si el token ya se canceló cuando se invoca este método, el callback se ejecutará inmediatamente y de forma sincrónica.

template<typename _Function>
::Concurrency::cancellation_token_registration register_callback(const _Function& _Func) const;

Parámetros

_Function
Tipo del objeto de función que se volverá a llamar cuando se cancele este objeto cancellation_token.

_Func
Objeto de función que se volverá a llamar cuando se cancele este objeto cancellation_token.

Valor devuelto

Objeto cancellation_token_registration que se puede utilizar en el método deregister para anular el registro de un callback previamente registrado y evitar que se ejecute. El método producirá una excepción de invalid_operation si se llama en un objeto cancellation_token creado con el método cancellation_token::none.

Consulte también

espacio de nombres de concurrencia