C++ 参考手册

位置:首页 > C++ 参考手册 >线程支持库 > std::latch

定义于头文件 <latch>
class latch;
(C++20 起)

latchptrdiff_t 类型的向下计数器,它能用于同步线程。在创建时初始化计数器的值。

线程可能在 latch 上阻塞直至计数器减少到零。没有可能增加或重置计数器,这使得 latch 为单次使用的屏障。

同时调用 latch 的成员函数,除了析构函数,不引入数据竞争。

不同于 std::barrier ,参与线程能减少 std::latch 多于一次。

成员函数

构造 latch
(公开成员函数)
析构 latch
(公开成员函数)
operator=
[被删除]
latch 不可赋值
(公开成员函数)
以不阻塞的方式减少计数器
(公开成员函数)
测试内部计数器是否等于零
(公开成员函数)
阻塞直至计数器抵达零
(公开成员函数)
减少计数器并阻塞直至它抵达零
(公开成员函数)
常量
[静态]
实现所支持的计数器最大值
(公开静态成员函数)

示例

本节未完成
原因:暂无示例

参阅

(C++20)
可复用的线程屏障
(类模板)