文章目录
- 主要特点
- 基本用法
- 示例代码
- 使用场景
- 注意事项
 
 
std::promise 是 C++11 引入的一个模板类,位于 <future> 头文件,用于实现异步操作中的值传递和异常传递。它与 std::future 一起使用,提供了一种机制,使得一个线程可以将结果或异常传递给另一个线程。
主要特点
- 异步结果存储:std::promise允许你设置一个值,这个值可以在未来的某个时刻由另一个线程获取。这个过程通常是通过std::future来实现的。
- 异常传递:如果在设置结果的过程中发生了异常,std::promise也可以传递这个异常。接收方通过std::future::get()可以获得该异常。
- 线程安全:std::promise是线程安全的,可以在一个线程中设置值,另一个线程中读取值。
基本用法
-  创建 std::promise实例: