std::execution:: ensure_started
From cppreference.net
C++
Execution control library
|
|
注意
このユーティリティはP2300から削除予定であり、
async_scope
に置き換えられます。
|
|
定義済みヘッダー
<execution>
|
||
|
execution
::
sender
auto
ensure_started
(
execution
::
sender
auto
sender
)
;
|
(C++26以降) | |
パラメータ
| sender | - |
停止されたチャネルがマッピングされる入力sender
err
|
戻り値
提供された sender が完了したときに完了し、提供された sender と同等の値を送信するsenderを返します。
注記
-
ensure_startedが戻ると、提供された sender が接続され、結果の操作状態に対してstartが呼び出されたことが確認されます。言い換えれば、提供された sender によって記述された作業が、適切な実行リソース上で実行のために送信されたことになります。
- 返されたsenderが execution::connect() が呼び出される前に破棄された場合、または execution::connect() が呼び出されたが、返されたoperation-stateが execution::start() が呼び出される前に破棄された場合、積極的に起動された操作に対してstop-requestが送信され、操作はデタッチされてバックグラウンドで完了まで実行されます。
- そのような場合、操作の結果は最終的に完了したときに破棄されます。
- アプリケーションは、操作がデタッチされる場合(例えば、それらのリソースへの std::shared_ptr を保持することによって)にリソースが確実に保持されるようにする必要があることに注意してください。