|
28 | 28 | <meta property="og:url" content="https://cpprefjp.github.io/reference/execution/execution/bulk_unchunked.html" /> |
29 | 29 | <meta property="og:site_name" content="cpprefjp - C++日本語リファレンス" /> |
30 | 30 | <meta property="og:type" content="article" /> |
31 | | - <meta property="og:description" content="`bulk_unchunked`は、インデクス空間の各インデクスに対してタスクを反復実行するSenderアダプタである。" /> |
| 31 | + <meta property="og:description" content="`bulk_unchunked`は、インデクス空間の各インデクスに対してタスクを一括実行するSenderアダプタである。" /> |
32 | 32 | <meta name="twitter:card" content="summary" /> |
33 | 33 | <meta name="twitter:title" content="bulk_unchunked - cpprefjp C++日本語リファレンス" /> |
34 | 34 | <meta name="twitter:url" content="https://cpprefjp.github.io/reference/execution/execution/bulk_unchunked.html" /> |
35 | | - <meta name="twitter:description" content="`bulk_unchunked`は、インデクス空間の各インデクスに対してタスクを反復実行するSenderアダプタである。" /> |
| 35 | + <meta name="twitter:description" content="`bulk_unchunked`は、インデクス空間の各インデクスに対してタスクを一括実行するSenderアダプタである。" /> |
36 | 36 |
|
37 | 37 |
|
38 | 38 | <link rel="alternate" type="application/atom+xml" title="Atom" href="https://cpprefjp.github.io/rss.xml" /> |
|
200 | 200 |
|
201 | 201 | <p class="text-right"><small> |
202 | 202 | 最終更新日時(UTC): |
203 | | - <span itemprop="datePublished" content="2025-08-26T16:08:52"> |
204 | | - 2025年08月26日 16時08分52秒 |
| 203 | + <span itemprop="datePublished" content="2025-08-27T16:34:45"> |
| 204 | + 2025年08月27日 16時34分45秒 |
205 | 205 | </span> |
206 | 206 | <br/> |
207 | 207 | <span itemprop="author" itemscope itemtype="http://schema.org/Person"> |
|
232 | 232 | </code></pre></div> |
233 | 233 | </p> |
234 | 234 | <h2>概要</h2> |
235 | | -<p><code>bulk_unchunked</code>は、インデクス空間の各インデクスに対してタスクを反復実行するSenderアダプタである。</p> |
| 235 | +<p><code>bulk_unchunked</code>は、インデクス空間の各インデクスに対してタスクを一括実行するSenderアダプタである。</p> |
236 | 236 | <p><code>bulk_unchunked</code>は<a href="sender_adaptor_closure.html">パイプ可能Senderアダプタオブジェクト</a>であり、パイプライン記法をサポートする。</p> |
| 237 | +<p>実行制御ライブラリのデフォルト動作では、下記のように振る舞う。</p> |
| 238 | +<ul> |
| 239 | +<li><a href="parallel_scheduler.html">並列Scheduler</a>上では、各インデクスに対する処理は個別の実行エージェント上で並列実行される。</li> |
| 240 | +<li>明示的にカスタマイズされていなければ、各インデクスに対する処理は逐次実行される。</li> |
| 241 | +</ul> |
237 | 242 | <h2>効果</h2> |
238 | 243 | <p>説明用の式<code>sndr</code>, <code>policy</code>, <code>shape</code>, <code>f</code>に対して、型<code>Policy</code>を<code><a href="../../type_traits/remove_cvref.html">remove_cvref_t</a><decltype(policy)></code>、型<code>Shape</code>を<code>decltype(auto(shape))</code>、型<code>Func</code>を<code><a href="../../type_traits/decay.html">decay_t</a><decltype((f))></code>とする。下記いずれかの条件をみたすとき、呼び出し式<code>bulk_unchunked(sndr, policy, shape, f)</code>は<a class="cpprefjp-defined-word" data-desc="プログラムが適格でないこと。コンパイルエラーなどになる" href="../../../implementation-compliance.html#dfn-ill-formed">不適格</a>となる。</p> |
239 | 244 | <ul> |
@@ -286,7 +291,7 @@ <h2>カスタマイゼーションポイント</h2> |
286 | 291 | <ul> |
287 | 292 | <li>説明用の<code>args</code>を<code>sndr</code>の値完了結果を参照する左辺値式のパック、または<code><a href="../../concepts/copy_constructible.html">copy_constructible</a></code>のモデルであるならばそれらの値のdecayコピーのパックとする。<code>sndr</code>が値完了したとき、<ul> |
288 | 293 | <li><code>out_sndr</code>もまた値完了するとき、<code>0</code>から<code>shape</code>までの型<code>Shape</code>の全ての<code>i</code>に対して<code>f(i, args...)</code>を呼び出す。<ul> |
289 | | -<li>スケジューラ実装者は、各イテレーションを独立した実行エージェント上で実行することが推奨される。</li> |
| 294 | +<li><a href="scheduler.html">Scheduler</a>実装者は、各イテレーションを独立した実行エージェント上で実行することが推奨される。</li> |
290 | 295 | </ul> |
291 | 296 | </li> |
292 | 297 | <li><code>out_sndr</code>が<code><a href="set_error.html">set_error</a>(rcvr, eptr)</code>で完了するとき、エラー完了ハンドラが呼び出される前に非<a class="cpprefjp-defined-word" data-desc="マルチスレッド実行時にリソースの所有権に基づいて実行順序を制御する操作">同期操作</a>は<code>f</code>呼び出しのサブセットを呼び出す可能性があり、<code>eptr</code>は下記いずれかを指す<code><a href="../../exception/exception_ptr.html">exception_ptr</a></code>となる。<ul> |
@@ -338,11 +343,13 @@ <h2>関連項目</h2> |
338 | 343 | <ul> |
339 | 344 | <li><code><a href="bulk.html">execution::bulk</a></code></li> |
340 | 345 | <li><code><a href="bulk_chunked.html">execution::bulk_chunked</a></code></li> |
| 346 | +<li><code><a href="parallel_scheduler.html">execution::parallel_scheduler</a></code></li> |
341 | 347 | </ul> |
342 | 348 | <h2>参照</h2> |
343 | 349 | <ul> |
344 | 350 | <li><a href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p2999r3.html" target="_blank">P2999R3 Sender Algorithm Customization</a></li> |
345 | 351 | <li><a href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/p2300r10.html" target="_blank">P2300R10 <code>std::execution</code></a></li> |
| 352 | +<li><a href="https://open-std.org/jtc1/sc22/wg21/docs/papers/2025/p2079r10.html" target="_blank">P2079R10 Parallel scheduler</a></li> |
346 | 353 | <li><a href="https://open-std.org/jtc1/sc22/wg21/docs/papers/2025/p3481r5.html" target="_blank">P3481R5 <code>std::execution::bulk()</code> issues</a></li> |
347 | 354 | </ul></div> |
348 | 355 |
|
|
0 commit comments