|
1 | 1 | %!TEX root = ts.tex
|
2 | 2 |
|
3 |
| -\rSec0[parallel.task_block]{Task Block} |
| 3 | +\rSec0[parallel.taskblock]{Task Block} |
4 | 4 |
|
5 |
| -\rSec1[parallel.task_block.synopsis]{Header \tcode{<experimental/task_block> synopsis}} |
| 5 | +\rSec1[parallel.taskblock.synopsis]{Header \tcode{<experimental/task_block> synopsis}} |
6 | 6 |
|
7 | 7 | \begin{codeblock}
|
8 | 8 | namespace std::experimental {
|
|
20 | 20 | }
|
21 | 21 | \end{codeblock}
|
22 | 22 |
|
23 |
| -\rSec1[parallel.task_block.task_cancelled_exception]{Class \tcode{task_cancelled_exception}} |
| 23 | +\rSec1[parallel.taskblock.task_cancelled_exception]{Class \tcode{task_cancelled_exception}} |
24 | 24 |
|
25 | 25 | \begin{codeblock}
|
26 | 26 | namespace std::experimental {
|
|
40 | 40 | The class \tcode{task_cancelled_exception} defines the type of objects
|
41 | 41 | thrown by \tcode{task_block\colcol{}run} or \tcode{task_block\colcol{}wait} if they detect
|
42 | 42 | than an exception is pending within the current parallel block. See
|
43 |
| -\ref{parallel.task_block.exceptions}, below. |
| 43 | +\ref{parallel.taskblock.exceptions}, below. |
44 | 44 |
|
45 |
| -\rSec2[parallel.task_block.task_cancelled_exception.what]{\tcode{task_cancelled_exception} member function \tcode{what}} |
| 45 | +\rSec2[parallel.taskblock.task_cancelled_exception.what]{\tcode{task_cancelled_exception} member function \tcode{what}} |
46 | 46 |
|
47 | 47 | \begin{itemdecl}
|
48 | 48 | virtual const char* what() const noexcept;
|
|
53 | 53 | \returns An implementation-defined NTBS.
|
54 | 54 | \end{itemdescr}
|
55 | 55 |
|
56 |
| -\rSec1[parallel.task_block.class]{Class \tcode{task_block}} |
| 56 | +\rSec1[parallel.taskblock.class]{Class \tcode{task_block}} |
57 | 57 |
|
58 | 58 | \begin{codeblock}
|
59 | 59 | namespace std::experimental {
|
|
126 | 126 | Implementations are encouraged to diagnose the above error at translation time.
|
127 | 127 | \end{note}
|
128 | 128 |
|
129 |
| -\rSec2[parallel.task_block.class.run]{\tcode{task_block} member function template \tcode{run}} |
| 129 | +\rSec2[parallel.taskblock.class.run]{\tcode{task_block} member function template \tcode{run}} |
130 | 130 |
|
131 | 131 | \begin{itemdecl}
|
132 | 132 | template<class F> void run(F&& f);
|
|
153 | 153 | \tcode{define_task_block_restore_thread} that created this \tcode{task_block}).
|
154 | 154 |
|
155 | 155 | \pnum
|
156 |
| -\throws \tcode{task_cancelled_exception}, as described in \ref{parallel.task_block.exceptions}. |
| 156 | +\throws \tcode{task_cancelled_exception}, as described in \ref{parallel.taskblock.exceptions}. |
157 | 157 |
|
158 | 158 | \pnum
|
159 | 159 | \remarks The \tcode{run} function may return on a thread other than the
|
|
170 | 170 |
|
171 | 171 | \end{itemdescr}
|
172 | 172 |
|
173 |
| -\rSec2[parallel.task_block.class.wait]{\tcode{task_block} member function \tcode{wait}} |
| 173 | +\rSec2[parallel.taskblock.class.wait]{\tcode{task_block} member function \tcode{wait}} |
174 | 174 |
|
175 | 175 | \begin{itemdecl}
|
176 | 176 | void wait();
|
|
184 | 184 | \effects Blocks until the tasks spawned using this \tcode{task_block} have completed.
|
185 | 185 |
|
186 | 186 | \pnum
|
187 |
| -\throws \tcode{task_cancelled_exception}, as described in \ref{parallel.task_block.exceptions}. |
| 187 | +\throws \tcode{task_cancelled_exception}, as described in \ref{parallel.taskblock.exceptions}. |
188 | 188 |
|
189 | 189 | \pnum
|
190 | 190 | \postconditions All tasks spawned by the nearest enclosing task block have completed.
|
|
208 | 208 |
|
209 | 209 | \end{itemdescr}
|
210 | 210 |
|
211 |
| -\rSec1[parallel.task_block.define_task_block]{Function template \tcode{define_task_block}} |
| 211 | +\rSec1[parallel.taskblock.define_task_block]{Function template \tcode{define_task_block}} |
212 | 212 |
|
213 | 213 | \begin{itemdecl}
|
214 | 214 | template<class F> void define_task_block(F&& f);
|
|
223 | 223 | \effects Constructs a \tcode{task_block} \tcode{tb} and calls \tcode{f(tb)}.
|
224 | 224 |
|
225 | 225 | \pnum
|
226 |
| -\throws \tcode{exception_list}, as specified in \ref{parallel.task_block.exceptions}. |
| 226 | +\throws \tcode{exception_list}, as specified in \ref{parallel.taskblock.exceptions}. |
227 | 227 |
|
228 | 228 | \pnum
|
229 | 229 | \postconditions All tasks spawned from \tcode{f} have finished execution.
|
|
232 | 232 | \remarks The \tcode{define_task_block} function may return on a thread
|
233 | 233 | other than the one on which it was called unless there are no task blocks
|
234 | 234 | active on entry to \tcode{define_task_block} (see
|
235 |
| - \ref{parallel.task_block.class}), in which case the function returns on the |
| 235 | + \ref{parallel.taskblock.class}), in which case the function returns on the |
236 | 236 | original thread. When \tcode{define_task_block} returns on a different thread, it
|
237 | 237 | synchronizes with operations following the call. \begin{note}The return from
|
238 | 238 | \tcode{define_task_block} is ordered similarly to an ordinary function
|
|
243 | 243 | \realnotes It is expected (but not mandated) that \tcode{f} will (directly or indirectly) call \tcode{tb.run(\UNSP{function-\brk{}object})}.
|
244 | 244 | \end{itemdescr}
|
245 | 245 |
|
246 |
| -\rSec1[parallel.task_block.exceptions]{Exception Handling} |
| 246 | +\rSec1[parallel.taskblock.exceptions]{Exception Handling} |
247 | 247 |
|
248 | 248 | \pnum
|
249 | 249 | Every \tcode{task_block} has an associated exception list. When the task block starts, its associated exception list is empty.
|
|
0 commit comments