Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье
Класс cancellation_token
представляет возможность определить, получала ли некоторая операция запрос на отмену. Заданный токен можно связать с task_group
, structured_task_group
или task
для предоставления неявной отмены. Его также можно опрашивать на предмет отмены или зарегистрировать обратный вызов для той ситуации, когда отменяется связанный cancellation_token_source
.
class cancellation_token;
Имя | Описание |
---|---|
cancellation_token | |
Деструктор ~cancellation_token |
Имя | Описание |
---|---|
deregister_callback | Удаляет обратный вызов, ранее зарегистрированный с помощью метода register на основании объекта cancellation_token_registration , возвращенного во время регистрации. |
is_cancelable | Возвращает значение, указывающее, может ли этот токен быть отменен или нет. |
is_canceled | Возвращает, true если маркер был отменен. |
none | Возвращает токен отмены, который никогда не может подвергаться отмене. |
register_callback | Регистрирует функцию обратного вызова в токене. Если и когда токен отменяется, выполняется обратный вызов. Обратите внимание, что если токен уже отменен в той точке, где вызывается этот метод, обратный вызов будет выполнен немедленно и синхронно. |
Имя | Описание |
---|---|
оператор!= | |
operator= | |
operator== |
cancellation_token
Заголовок: pplcancellation_token.h
Пространство имен: concurrency
~cancellation_token();
cancellation_token(const cancellation_token& _Src);
cancellation_token(cancellation_token&& _Src);
_Src
Cancellation_token для копирования или перемещения.
Удаляет обратный вызов, ранее зарегистрированный с помощью метода register
на основании объекта cancellation_token_registration
, возвращенного во время регистрации.
void deregister_callback(const cancellation_token_registration& _Registration) const;
_Регистрация
Объект cancellation_token_registration
, соответствующий обратному вызову, регистрацию которого требуется отменить. Этот токен должен быть предварительно возвращен из вызова метода register
.
Возвращает значение, указывающее, может ли этот токен быть отменен или нет.
bool is_cancelable() const;
Индикация того, может ли этот токен быть отменен.
Возвращает, true
если маркер был отменен.
bool is_canceled() const;
Значение true
, если маркер был отменен; в противном случае — значение false
.
Возвращает токен отмены, который никогда не может подвергаться отмене.
static cancellation_token none();
Токен отмены, который невозможно отменить.
bool operator!= (const cancellation_token& _Src) const;
_Src
Объект cancellation_token
для сравнения.
cancellation_token& operator= (const cancellation_token& _Src);
cancellation_token& operator= (cancellation_token&& _Src);
_Src
Назначение cancellation_token
.
bool operator== (const cancellation_token& _Src) const;
_Src
Объект cancellation_token
для сравнения.
Регистрирует функцию обратного вызова в токене. Если и когда токен отменяется, выполняется обратный вызов. Обратите внимание, что если токен уже отменен в той точке, где вызывается этот метод, обратный вызов будет выполнен немедленно и синхронно.
template<typename _Function>
::Concurrency::cancellation_token_registration register_callback(const _Function& _Func) const;
_Функция
Тип объекта функции, вызываемого при отмене этого cancellation_token
.
_Func
Объект функции, вызываемый при отмене этого cancellation_token
.
Объект cancellation_token_registration
, который можно использовать в методе deregister
для отмены регистрации ранее зарегистрированного обратного вызова и предотвращения его выполнения. Метод вызывает исключение invalid_operation , если он вызывается для cancellation_token
объекта, созданного с помощью метода cancellation_token::none .