std::barrier<CompletionFunction>::barrier
来自cppreference.com
并发支持库
|
|
std::barrier
成员函数 | ||||
barrier::barrier
|
||||
常量 | ||||
constexpr
explicit
barrier( std::ptrdiff_t
expected,
CompletionFunction f = CompletionFunction()); |
(1) | (C++20 起) |
barrier(
const
barrier &
) =
delete;
|
(2) | (C++20 起) |
1) 设置每个阶段的初始期待计数及首阶段的当前期待计数为
expected
,以 std::move(f)
初始化完成函数对象,然后开始第一阶段。若 expected
为负或大于 max()
则行为未定义。
2) 复制构造函数被删除。
barrier
既不可复制亦不可移动。参数
expected | - | 期待计数的初值 |
f | - | 要在在阶段完成步骤调用的完成函数对象 |
异常
1) 任何
CompletionFunction
的移动构造函数所抛的异常。注解
容许 expected
为零。然而在这种 barrier
上调用析构函数以外的任何非静态成员函数导致未定义行为。换言之,这种 barrier
只能被销毁。