MSTL 1.4.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
单次调用

确保函数在多线程环境中只执行一次 更多...

class  once_flag
 一次性调用标志类 更多...

函数

template<typename Callable, typename... Args>
void call_once (once_flag &flag, Callable &&func, Args &&... args)
 单次调用函数

详细描述

确保函数在多线程环境中只执行一次

函数说明

◆ call_once()

template<typename Callable, typename... Args>
void call_once ( once_flag & flag,
Callable && func,
Args &&... args )

单次调用函数

模板参数
Callable可调用类型
Args参数类型
参数
flag一次性调用标志
func要执行的函数
args函数的参数

确保函数在多线程环境中只被执行一次。 如果已经有线程正在执行该函数,其他线程将等待直到执行完成。 如果函数已成功执行,后续调用将立即返回。

注解
如果函数抛出异常,则视为未执行,后续线程将尝试重新执行

在文件 call_once.hpp65 行定义.