template<class Initializer>
explicit inplace_stop_callback(inplace_stop_token st, Initializer&& init)
noexcept(is_nothrow_constructible_v<CallbackFn, Initializer>); // (1)
inplace_stop_callback(const inplace_stop_callback&) = delete; // (2)
inplace_stop_callback(inplace_stop_callback&&) = delete; // (3)
概要
- (1) :
inplace_stop_tokenを受け取り、そのinplace_stop_tokenが参照する停止状態への停止要求に応じて呼び出されるコールバックを登録する。 - (2) : コピーコンストラクタ。コピー不可。
- (3) : ムーブコンストラクタ。ムーブ不可。
テンプレートパラメータ制約
クラステンプレートのテンプレート引数CallbackFnとコンストラクタのテンプレート引数Initializerはconstructible_from<CallbackFn, Initializer>制約を満たすこと。
効果
説明専用のメンバ変数callback-fnをstd::forward<CallbackFn>(init)で初期化し、停止可能コールバック登録を実行する。
例外
説明専用のメンバ変数callback-fnをinitで初期化する際に例外が発生する場合は、その例外を送出する。
バージョン
言語
- C++26
処理系
- Clang: ??
- GCC: ??
- ICC: ??
- Visual C++: ??