cancellation_token-Klasse
Mit der cancellation_token
-Klasse kann bestimmt werden, ob für einen Vorgang ein Abbruch angefordert wurde. Dem angegebenen Token kann task_group
, structured_task_group
oder task
zugeordnet werden, um einen impliziten Abbruch bereitzustellen. Es kann auch zum Abbruch abgerufen oder für einen Rückruf registriert werden, wenn das zugeordnete cancellation_token_source
-Element abgebrochen wird.
Syntax
class cancellation_token;
Member
Öffentliche Konstruktoren
Name | Beschreibung |
---|---|
cancellation_token | |
~cancellation_token Destruktor |
Öffentliche Methoden
Name | Beschreibung |
---|---|
deregister_callback | Entfernt einen Rückruf, der zuvor über die Methode register registriert wurde, auf Grundlage des cancellation_token_registration -Objekts, das zum Zeitpunkt der Registrierung zurückgegeben wurde. |
is_cancelable | Gibt einen Hinweis zurück, ob dieses Token abgebrochen werden kann oder nicht. |
is_canceled | Gibt zurück true , wenn das Token abgebrochen wurde. |
none | Gibt ein Abbruchtoken zurück, das nie abgebrochen werden kann. |
register_callback | Verknüpft eine Rückruffunktion mit dem Token. Wenn das Token abgebrochen wird, wird der Rückruf vorgenommen. Wurde das Token bereits abgebrochen, wenn diese Methode aufgerufen wird, wird der Rückruf sofort und synchron ausgeführt. |
Öffentliche Operatoren
Name | Beschreibung |
---|---|
operator!= | |
operator= | |
operator== |
Vererbungshierarchie
cancellation_token
Anforderungen
Kopfzeile: pplcancellation_token.h
Namespace: Parallelität
~cancellation_token
~cancellation_token();
cancellation_token
cancellation_token(const cancellation_token& _Src);
cancellation_token(cancellation_token&& _Src);
Parameter
_Src
Die cancellation_token, die kopiert oder verschoben werden soll.
deregister_callback
Entfernt einen Rückruf, der zuvor über die Methode register
registriert wurde, auf Grundlage des cancellation_token_registration
-Objekts, das zum Zeitpunkt der Registrierung zurückgegeben wurde.
void deregister_callback(const cancellation_token_registration& _Registration) const;
Parameter
_Registrierung
Das cancellation_token_registration
-Objekt für den Rückruf, dessen Registrierung aufgehoben werden soll. Dieses Token muss zuvor von einem Aufruf der register
-Methode zurückgegeben worden sein.
is_cancelable
Gibt einen Hinweis zurück, ob dieses Token abgebrochen werden kann oder nicht.
bool is_cancelable() const;
Rückgabewert
Ein Hinweis darauf, ob dieses Token abgebrochen werden kann oder nicht.
is_canceled
Gibt zurück true
, wenn das Token abgebrochen wurde.
bool is_canceled() const;
Rückgabewert
Der Wert true
, wenn das Token abgebrochen wurde; andernfalls der Wert false
.
none
Gibt ein Abbruchtoken zurück, das nie abgebrochen werden kann.
static cancellation_token none();
Rückgabewert
Ein Abbruchtoken, das nicht abgebrochen werden kann.
operator!=
bool operator!= (const cancellation_token& _Src) const;
Parameter
_Src
Das zu vergleichende cancellation_token
-Element.
Rückgabewert
operator =
cancellation_token& operator= (const cancellation_token& _Src);
cancellation_token& operator= (cancellation_token&& _Src);
Parameter
_Src
Der cancellation_token
zugewiesen werden soll.
Rückgabewert
operator==
bool operator== (const cancellation_token& _Src) const;
Parameter
_Src
Das zu vergleichende cancellation_token
-Element.
Rückgabewert
register_callback
Verknüpft eine Rückruffunktion mit dem Token. Wenn das Token abgebrochen wird, wird der Rückruf vorgenommen. Wurde das Token bereits abgebrochen, wenn diese Methode aufgerufen wird, wird der Rückruf sofort und synchron ausgeführt.
template<typename _Function>
::Concurrency::cancellation_token_registration register_callback(const _Function& _Func) const;
Parameter
_Funktion
Der Typ des Funktionsobjekts, das zurückgerufen wird, wenn dieses cancellation_token
abgebrochen wird.
_Func
Das Funktionsobjekt, das zurückgerufen wird, wenn dieses cancellation_token
abgebrochen wird.
Rückgabewert
Ein cancellation_token_registration
-Objekt, das in der deregister
-Methode verwendet werden kann, um einen bereits registrierten Rückruf aufzuheben, damit er nicht ausgeführt wird. Die Methode löst eine invalid_operation Ausnahme aus, wenn sie für ein cancellation_token
Objekt aufgerufen wird, das mit der methode cancellation_token::none erstellt wurde.