Skip to content

Commit a4a34c5

Browse files
author
cpprefjp-autoupdate
committed
update automatically
1 parent 0d3f65e commit a4a34c5

File tree

8 files changed

+243
-1664
lines changed

8 files changed

+243
-1664
lines changed

reference/future/packaged_task/op_constructor.html

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -200,8 +200,8 @@
200200

201201
<p class="text-right"><small>
202202
最終更新日時(UTC):
203-
<span itemprop="datePublished" content="2024-06-11T13:45:38">
204-
2024年06月11日 13時45分38秒
203+
<span itemprop="datePublished" content="2026-01-29T04:22:36">
204+
2026年01月29日 04時22分36秒
205205
</span>
206206
<br/>
207207
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -232,7 +232,7 @@
232232

233233
<span class="k">template</span> <span class="o">&lt;</span><span class="k">class</span> <span class="nc">F</span><span class="p">,</span> <span class="k">class</span> <span class="nc">Allocator</span><span class="o">&gt;</span>
234234
<span class="k">explicit</span> <span class="n">packaged_task</span><span class="p">(</span><span class="n"><a href="../../memory/allocator_arg_t.html">allocator_arg_t</a></span><span class="p">,</span>
235-
<span class="k">const</span> <span class="n">Allocator</span><span class="o">&amp;</span> <span class="n">a</span><span class="p">,</span> <span class="n">F</span><span class="o">&amp;&amp;</span> <span class="n">f</span><span class="p">);</span> <span class="c1">// (3) C++17で削除</span>
235+
<span class="k">const</span> <span class="n">Allocator</span><span class="o">&amp;</span> <span class="n">a</span><span class="p">,</span> <span class="n">F</span><span class="o">&amp;&amp;</span> <span class="n">f</span><span class="p">);</span> <span class="c1">// (3) C++17で削除、C++26で再追加</span>
236236

237237
<span class="n">packaged_task</span><span class="p">(</span><span class="n">packaged_task</span><span class="o">&amp;</span><span class="p">)</span> <span class="o">=</span> <span class="k">delete</span><span class="p">;</span> <span class="c1">// (4) C++11</span>
238238
<span class="n">packaged_task</span><span class="p">(</span><span class="k">const</span> <span class="n">packaged_task</span><span class="o">&amp;</span><span class="p">)</span> <span class="o">=</span> <span class="k">delete</span><span class="p">;</span> <span class="c1">// (4) C++14</span>
@@ -336,6 +336,10 @@ <h2>参照</h2>
336336
</ul>
337337
</li>
338338
<li><a href="https://wg21.cmeerw.net/lwg/issue3039" target="_blank">LWG Issue 3039. Unnecessary <code>decay</code> in <code>thread</code> and <code>packaged_task</code></a></li>
339+
<li><a href="https://open-std.org/jtc1/sc22/wg21/docs/papers/2025/p3503r3.html" target="_blank">P3503R3 Make type-erased allocator use in <code>promise</code> and <code>packaged_task</code> consistent</a><ul>
340+
<li>C++26でアロケータを受け取るコンストラクタを再追加</li>
341+
</ul>
342+
</li>
339343
</ul></div>
340344

341345
</div>

reference/future/packaged_task/reset.html

Lines changed: 31 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -200,12 +200,12 @@
200200

201201
<p class="text-right"><small>
202202
最終更新日時(UTC):
203-
<span itemprop="datePublished" content="2025-07-11T17:16:44">
204-
2025年07月11日 17時16分44秒
203+
<span itemprop="datePublished" content="2026-01-29T04:22:36">
204+
2026年01月29日 04時22分36秒
205205
</span>
206206
<br/>
207207
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
208-
<span itemprop="name">Koichi Murase</span>
208+
<span itemprop="name">Akira Takahashi</span>
209209
</span>
210210
が更新
211211
</small></p>
@@ -232,18 +232,34 @@ <h2>概要</h2>
232232
<p>共有状態を作り直す。</p>
233233
<p>一度タスクを実行したのちは共有状態への結果値の再格納ができないため、同じ<code>packaged_task</code>オブジェクトの同じ関数(タスク)を再度非同期実行したい場合に使用する。</p>
234234
<h2>効果</h2>
235-
<p><div class="codehilite"><pre><span></span><code><span class="o">*</span><span class="k">this</span> <span class="o">=</span> <span class="n">packaged_task</span><span class="p">(</span><span class="n"><a href="../../utility/move.html">std::move</a></span><span class="p">(</span><span class="n">f</span><span class="p">));</span>
235+
<p>メンバ変数として保持している、非同期実行する関数オブジェクトを<code>f</code>として、</p>
236+
<ul>
237+
<li>
238+
<p>C++11: あたかも以下のように動作する
239+
<br />
240+
<div class="codehilite"><pre><span></span><code><span class="o">*</span><span class="k">this</span> <span class="o">=</span> <span class="n">packaged_task</span><span class="p">(</span><span class="n"><a href="../../utility/move.html">std::move</a></span><span class="p">(</span><span class="n">f</span><span class="p">));</span>
241+
</code></pre></div>
242+
</p>
243+
<ul>
244+
<li>この操作によって、新たに共有状態を作成する。古い共有状態は放棄される(詳細は<code><a href="op_assign.html">operator=</a></code>を参照)。</li>
245+
</ul>
246+
</li>
247+
<li>
248+
<p>C++26: 以下と等価
249+
<br />
250+
<div class="codehilite"><pre><span></span><code><span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n"><a href="valid.html">valid</a></span><span class="p">())</span>
251+
<span class="k">throw</span> <span class="n"><a href="../future_error.html">future_error</a></span><span class="p">(</span><span class="n">future_errc</span><span class="o">::</span><span class="n">no_state</span><span class="p">);</span>
252+
<span class="o">*</span><span class="k">this</span> <span class="o">=</span> <span class="n">packaged_task</span><span class="p">(</span><span class="n"><a href="../../memory/allocator_arg_t.html">allocator_arg</a></span><span class="p">,</span> <span class="n">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">f</span><span class="p">));</span>
236253
</code></pre></div>
237254
</p>
238-
<p>によって、新たに共有状態を作成する。古い共有状態は放棄される(詳細は<code><a href="op_assign.html">operator=</a></code>を参照)。</p>
239-
<p><code>f</code>はメンバ変数として保持している、非同期実行する関数オブジェクト。</p>
255+
</li>
256+
</ul>
240257
<h2><a class="cpprefjp-defined-word" data-desc="関数呼び出し式の評価結果となるオブジェクト・値">戻り値</a></h2>
241258
<p>なし</p>
242259
<h2><a class="cpprefjp-defined-word" data-desc="問題が発生したときに、現在実行位置を過去に通過・記録した位置に戻し、文脈情報を添えて紐づけられた処理(例外ハンドラー)を呼び出す仕組み。またはその事態">例外</a></h2>
243260
<p>この関数は、以下の<a class="cpprefjp-defined-word" data-desc="問題が発生したときに、現在実行位置を過去に通過・記録した位置に戻し、文脈情報を添えて紐づけられた処理(例外ハンドラー)を呼び出す仕組み。またはその事態">例外</a>を送出する可能性がある:</p>
244261
<ul>
245-
<li><code><a href="../../new/bad_alloc.html">bad_alloc</a></code> : 新たな共有状態のアロケートに失敗</li>
246-
<li>タスク<code>f</code>のムーブコンストラクタが送出するあらゆる<a class="cpprefjp-defined-word" data-desc="問題が発生したときに、現在実行位置を過去に通過・記録した位置に戻し、文脈情報を添えて紐づけられた処理(例外ハンドラー)を呼び出す仕組み。またはその事態">例外</a></li>
262+
<li><code>package_task</code>のコンストラクタ、またはタスク<code>f</code>のムーブコンストラクタが送出するあらゆる<a class="cpprefjp-defined-word" data-desc="問題が発生したときに、現在実行位置を過去に通過・記録した位置に戻し、文脈情報を添えて紐づけられた処理(例外ハンドラー)を呼び出す仕組み。またはその事態">例外</a></li>
247263
<li><code><a href="../future_error.html">future_error</a></code> : 共有状態を持っていない状態でこの関数を呼び出した場合、<code><a href="../future_errc.html">no_state</a></code>をerror conditionにして送出する</li>
248264
</ul>
249265
<h2></h2>
@@ -287,7 +303,13 @@ <h3>処理系</h3>
287303
<li><a href="../../../implementation.html#icc">ICC</a>: ??</li>
288304
<li><a href="../../../implementation.html#visual_cpp">Visual C++</a>: 2012 <span aria-label="検証済" role="img" title="検証済"></span></li>
289305
</ul>
290-
<h2>参照</h2></div>
306+
<h2>参照</h2>
307+
<ul>
308+
<li><a href="https://open-std.org/jtc1/sc22/wg21/docs/papers/2025/p3503r3.html" target="_blank">P3503R3 Make type-erased allocator use in <code>promise</code> and <code>packaged_task</code> consistent</a><ul>
309+
<li>C++26でアロケータを受け取るコンストラクタで再構築するよう変更された</li>
310+
</ul>
311+
</li>
312+
</ul></div>
291313

292314
</div>
293315
</div>

reference/future/promise.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -188,12 +188,12 @@
188188

189189
<p class="text-right"><small>
190190
最終更新日時(UTC):
191-
<span itemprop="datePublished" content="2025-07-11T17:16:44">
192-
2025年07月11日 17時16分44秒
191+
<span itemprop="datePublished" content="2026-01-29T04:22:36">
192+
2026年01月29日 04時22分36秒
193193
</span>
194194
<br/>
195195
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
196-
<span itemprop="name">Koichi Murase</span>
196+
<span itemprop="name">Akira Takahashi</span>
197197
</span>
198198
が更新
199199
</small></p>
@@ -349,7 +349,7 @@ <h3>その他</h3>
349349
<tr>
350350
<td><code><a href="promise/uses_allocator.html">uses_allocator</a></code></td>
351351
<td><code>promise</code>による特殊化</td>
352-
<td></td>
352+
<td>C++11<br /> C++26で削除</td>
353353
</tr>
354354
</tbody>
355355
</table>

reference/future/promise/uses_allocator.html

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@
6868

6969
</head>
7070
<body>
71-
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;header&#34;: [&#34;future&#34;], &#34;namespace&#34;: [&#34;std&#34;], &#34;id-type&#34;: [&#34;class template&#34;], &#34;cpp&#34;: [&#34;cpp11&#34;]}, &#34;sources&#34;: [], &#34;page_id&#34;: [&#34;reference&#34;, &#34;future&#34;, &#34;promise&#34;, &#34;uses_allocator&#34;]}">
71+
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;header&#34;: [&#34;future&#34;], &#34;namespace&#34;: [&#34;std&#34;], &#34;id-type&#34;: [&#34;class template&#34;], &#34;cpp&#34;: [&#34;cpp11&#34;, &#34;cpp26removed&#34;]}, &#34;sources&#34;: [], &#34;page_id&#34;: [&#34;reference&#34;, &#34;future&#34;, &#34;promise&#34;, &#34;uses_allocator&#34;]}">
7272
<nav class="navbar navbar-default" role="navigation">
7373
<div class="container-fluid">
7474
<div class="navbar-header">
@@ -200,12 +200,12 @@
200200

201201
<p class="text-right"><small>
202202
最終更新日時(UTC):
203-
<span itemprop="datePublished" content="2025-07-11T17:16:44">
204-
2025年07月11日 17時16分44秒
203+
<span itemprop="datePublished" content="2026-01-29T04:22:36">
204+
2026年01月29日 04時22分36秒
205205
</span>
206206
<br/>
207207
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
208-
<span itemprop="name">Koichi Murase</span>
208+
<span itemprop="name">Akira Takahashi</span>
209209
</span>
210210
が更新
211211
</small></p>
@@ -224,22 +224,17 @@
224224
<div class="row">
225225
<div class="col-sm-12 content-body">
226226

227-
<div class="identifier-type">class template</div><div class="header">&lt;future&gt;</div><h1 itemprop="name"><span class="namespace" title="namespace std">std::</span><span class="token">uses_allocator</span><span class="cpp cpp11" title="C++11で追加">(C++11)</span></h1>
227+
<div class="identifier-type">class template</div><div class="header">&lt;future&gt;</div><h1 itemprop="name"><span class="namespace" title="namespace std">std::</span><span class="token">uses_allocator</span><span class="cpp cpp11" title="C++11で追加">(C++11)</span><span class="cpp cpp26removed text-danger" title="C++26で削除">(C++26で削除)</span></h1>
228228
<div itemprop="articleBody"><p><div class="codehilite"><pre><span></span><code><span class="k">namespace</span> <span class="n">std</span> <span class="p">{</span>
229229
<span class="k">template</span> <span class="o">&lt;</span><span class="k">class</span> <span class="nc">R</span><span class="p">,</span> <span class="k">class</span> <span class="nc">Alloc</span><span class="o">&gt;</span>
230230
<span class="k">struct</span> <span class="n">uses_allocator</span><span class="o">&lt;</span><span class="n">promise</span><span class="o">&lt;</span><span class="n">R</span><span class="o">&gt;</span><span class="p">,</span> <span class="n">Alloc</span><span class="o">&gt;</span>
231231
<span class="o">:</span> <span class="n"><a href="../../type_traits/true_type.html">true_type</a></span> <span class="p">{</span> <span class="p">};</span>
232232
<span class="p">}</span>
233233
</code></pre></div>
234234
</p>
235+
<p>この特殊化はC++11で導入され、C++26で削除された。</p>
235236
<h2>概要</h2>
236237
<p><code>uses_allocator</code>の、<code>promise&lt;R&gt;</code>に対する特殊化。</p>
237-
<h2></h2>
238-
<p><div class="codehilite"><pre><span></span><code>
239-
</code></pre></div>
240-
</p>
241-
<h3>出力</h3>
242-
<p><pre><code></code></pre></p>
243238
<h2>バージョン</h2>
244239
<h3>言語</h3>
245240
<ul>
@@ -252,7 +247,13 @@ <h3>処理系</h3>
252247
<li><a href="../../../implementation.html#icc">ICC</a>: ??</li>
253248
<li><a href="../../../implementation.html#visual_cpp">Visual C++</a>: 2012 <span aria-label="検証済" role="img" title="検証済"></span></li>
254249
</ul>
255-
<h2>参照</h2></div>
250+
<h2>参照</h2>
251+
<ul>
252+
<li><a href="https://open-std.org/jtc1/sc22/wg21/docs/papers/2025/p3503r3.html" target="_blank">P3503R3 Make type-erased allocator use in <code>promise</code> and <code>packaged_task</code> consistent</a><ul>
253+
<li>C++26でこの特殊化が削除された</li>
254+
</ul>
255+
</li>
256+
</ul></div>
256257

257258
</div>
258259
</div>

0 commit comments

Comments
 (0)