cancellation_token クラス
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 を返します。 |
なし | 取り消しの対象とはならないキャンセル トークンを返します。 |
register_callback | コールバック関数をトークンに登録します。 トークンが取り消された場合、コールバックが行われます。 このメソッドが呼び出された時点で既にコールバックが取り消されている場合、コールバックは即座に同期的に行われることに注意してください。 |
パブリック演算子
名前 | 説明 |
---|---|
operator!= | |
operator= | |
operator== |
継承階層
cancellation_token
要件
ヘッダー: pplcancellation_token.h
名前空間: concurrency
~cancellation_token
~cancellation_token();
cancellation_token
cancellation_token(const cancellation_token& _Src);
cancellation_token(cancellation_token&& _Src);
パラメーター
_Src
コピーまたは移動される cancellation_token です。
deregister_callback
登録時に返された register
オブジェクトに基づく cancellation_token_registration
メソッドによって以前に登録されたコールバックを削除します。
void deregister_callback(const cancellation_token_registration& _Registration) const;
パラメーター
_Registration
登録解除されるコールバックに対応する cancellation_token_registration
オブジェクト。 このトークンは、register
メソッドの呼び出しによって既に返されている必要があります。
is_cancelable
このトークンを取り消すことができるかどうかを示す値を返します。
bool is_cancelable() const;
戻り値
このトークンを取り消すことができるかどうかを示す値。
is_canceled
トークンが取り消された場合は true
を返します。
bool is_canceled() const;
戻り値
トークンが取り消されている場合は、値 true
。それ以外の場合は、値 false
。
なし
取り消しの対象とはならないキャンセル トークンを返します。
static cancellation_token none();
戻り値
取り消すことができないキャンセル トークン。
operator!=
bool operator!= (const cancellation_token& _Src) const;
パラメーター
_Src
比較対象の cancellation_token
。
戻り値
operator=
cancellation_token& operator= (const cancellation_token& _Src);
cancellation_token& operator= (cancellation_token&& _Src);
パラメーター
_Src
割り当てる cancellation_token
。
戻り値
operator==
bool operator== (const cancellation_token& _Src) const;
パラメーター
_Src
比較対象の cancellation_token
。
戻り値
register_callback
コールバック関数をトークンに登録します。 トークンが取り消された場合、コールバックが行われます。 このメソッドが呼び出された時点で既にコールバックが取り消されている場合、コールバックは即座に同期的に行われることに注意してください。
template<typename _Function>
::Concurrency::cancellation_token_registration register_callback(const _Function& _Func) const;
パラメーター
_Function
この cancellation_token
が取り消されるときにコールバックされる関数オブジェクトの型。
_Func
この cancellation_token
が取り消されるときにコールバックされる関数オブジェクト。
戻り値
cancellation_token_registration
メソッドで利用できる deregister
オブジェクト。その利用目的は、以前に登録されたコールバックの登録を解除し、コールバックが行われないようにすることです。 このメソッドが、cancellation_token::none メソッドを使用して作成された cancellation_token
オブジェクトで呼び出される場合、invalid_operation 例外がスローされます。