命名空间
变体
操作

std::once_flag

来自 cppreference.cn
< cpp‎ | thread
 
 
并发支持库
线程
(C++11)
(C++20)
this_thread 命名空间
(C++11)
(C++11)
(C++11)
协作式取消
互斥
(C++11)
通用锁管理
(C++11)
(C++11)
once_flag
(C++11)
(C++11)
(C++11)
条件变量
(C++11)
信号量
闩锁和屏障
(C++20)
(C++20)
期物
(C++11)
(C++11)
(C++11)
(C++11)
安全回收
(C++26)
危险指针
原子类型
(C++11)
(C++20)
原子类型的初始化
(C++11)(C++20 中已弃用)
(C++11)(C++20 中已弃用)
内存顺序
(C++11)(C++26 中已弃用)
原子操作的自由函数
原子标志的自由函数
 
定义于头文件 <mutex>
class once_flag;
(自 C++11 起)

std::once_flagstd::call_once 的辅助结构。

传递给 std::call_once 的多次调用的 std::once_flag 类型的对象允许这些调用相互协调,以便只有其中一个调用实际运行完成。

std::once_flag 既不可复制也不可移动。

内容

[edit] 成员函数

std::once_flag::once_flag

constexpr once_flag() noexcept;

构造一个 once_flag 对象。内部状态设置为指示尚未调用任何函数。

参数

(无)


[edit] 参见

(C++11)
即使从多个线程调用,也仅调用一次函数
(函数模板) [edit]
C 文档 关于 once_flag