200
200
201
201
< p class ="text-right "> < small >
202
202
最終更新日時(UTC):
203
- < span itemprop ="datePublished " content ="2025-05-23T13:38:37 ">
204
- 2025年05月23日 13時38分37秒
203
+ < span itemprop ="datePublished " content ="2025-05-26T07:21:10 ">
204
+ 2025年05月26日 07時21分10秒
205
205
</ span >
206
206
< br />
207
207
< span itemprop ="author " itemscope itemtype ="http://schema.org/Person ">
233
233
</ p >
234
234
< h2 > 概要</ h2 >
235
235
< p > < code > when_all</ code > は、複数の入力< a href ="sender.html "> Sender</ a > が全て完了するまで待機するSenderアダプタである。</ p >
236
+ < p > < code > when_all</ code > は全ての入力Senderが< a href ="set_value.html "> 値完了シグネチャ</ a > を1個だけ持つことを要求する。
237
+ 値完了シグネチャが複数存在する場合は< code > < a href ="when_all_with_variant.html "> when_all_with_variant</ a > </ code > アルゴリズムを利用する</ p >
236
238
< ul >
237
239
< li > 入力Sender全てが値完了のとき、全ての値完了結果を< code > < a href ="../../tuple/tuple.html "> tuple</ a > </ code > に結合して値完了操作を行う。</ li >
238
240
< li > いずれかがエラー完了のとき、同エラー値をもってエラー完了操作を行う。このとき停止要求が作成される。</ li >
@@ -283,7 +285,7 @@ <h3>Senderアルゴリズムタグ <code>when_all</code></h3>
283
285
< p > ラムダ式は下記を満たすオブジェクト< code > e</ code > を返す。</ p >
284
286
< ul >
285
287
< li > < code > decltype(e)</ code > が< code > < a href ="../queryable.html "> queryable</ a > </ code > のモデル、かつ</ li >
286
- < li > 式< code > e.query(< a href ="../get_stop_token.html "> get_stop_token</ a > )</ code > が< code > state.stop-src.get_token() </ code > と等価、かつ</ li >
288
+ < li > 式< code > e.query(< a href ="../get_stop_token.html "> get_stop_token</ a > )</ code > が< code > state.stop-src.< a href =" ../../stop_token/inplace_stop_source/ get_token.html " > get_token() </ a > </ code > と等価、かつ</ li >
287
289
< li > < code > < a href ="../get_stop_token.html "> get_stop_token</ a > </ code > 以外の< a href ="../queryable.html "> クエリオブジェクト</ a > < code > q</ code > に対して、式< code > e.query(q)</ code > は< code > < a href ="get_env.html "> get_env</ a > (rcvr).query(q)</ code > と等価。</ li >
288
290
</ ul >
289
291
< p > < code > impls-for<when_all_t>::get-state</ code > メンバは、下記ラムダ式と等価な関数呼び出し可能なオブジェクトで初期化される。</ p >
@@ -302,7 +304,7 @@ <h3>Senderアルゴリズムタグ <code>when_all</code></h3>
302
304
< span class ="n "> state</ span > < span class ="p "> .</ span > < span class ="n "> on_stop</ span > < span class ="p "> .</ span > < span class ="n "> < a href ="../../optional/optional/emplace.html "> emplace</ a > </ span > < span class ="p "> (</ span >
303
305
< span class ="n "> < a href ="../get_stop_token.html "> get_stop_token</ a > </ span > < span class ="p "> (</ span > < span class ="n "> < a href ="get_env.html "> get_env</ a > </ span > < span class ="p "> (</ span > < span class ="n "> rcvr</ span > < span class ="p "> )),</ span >
304
306
< span class ="n "> < a href ="on-stop-request.html "> on-stop-request</ a > </ span > < span class ="p "> {</ span > < span class ="n "> state</ span > < span class ="p "> .</ span > < span class ="n "> stop_src</ span > < span class ="p "> });</ span >
305
- < span class ="k "> if</ span > < span class ="p "> (</ span > < span class ="n "> state</ span > < span class ="p "> .</ span > < span class ="n "> stop_src</ span > < span class ="p "> .</ span > < span class ="n "> < a href ="../../stop_token/inplace_stop_token /stop_requested.html "> stop_requested()</ a > </ span > < span class ="p "> )</ span > < span class ="p "> {</ span >
307
+ < span class ="k "> if</ span > < span class ="p "> (</ span > < span class ="n "> state</ span > < span class ="p "> .</ span > < span class ="n "> stop_src</ span > < span class ="p "> .</ span > < span class ="n "> < a href ="../../stop_token/inplace_stop_source /stop_requested.html "> stop_requested()</ a > </ span > < span class ="p "> )</ span > < span class ="p "> {</ span >
306
308
< span class ="n "> state</ span > < span class ="p "> .</ span > < span class ="n "> on_stop</ span > < span class ="p "> .</ span > < span class ="n "> < a href ="../../optional/optional/reset.html "> reset()</ a > </ span > < span class ="p "> ;</ span >
307
309
< span class ="n "> < a href ="set_stopped.html "> set_stopped</ a > </ span > < span class ="p "> (</ span > < span class ="n "> < a href ="../../utility/move.html "> std::move</ a > </ span > < span class ="p "> (</ span > < span class ="n "> rcvr</ span > < span class ="p "> ));</ span >
308
310
< span class ="p "> }</ span > < span class ="k "> else</ span > < span class ="p "> {</ span >
@@ -564,7 +566,7 @@ <h3>処理系</h3>
564
566
</ ul >
565
567
< h2 > 関連項目</ h2 >
566
568
< ul >
567
- < li > < code > < span href ="https://cpprefjp.github.io/reference/execution/execution/ when_all_with_variant.md.nolink "> execution::when_all_with_variant</ span > </ code > </ li >
569
+ < li > < code > < a href ="when_all_with_variant.html "> execution::when_all_with_variant</ a > </ code > </ li >
568
570
</ ul >
569
571
< h2 > 参照</ h2 >
570
572
< ul >
0 commit comments