C++11多线程——<future>之std::promise学习

本文介绍了C++11中的<future>头文件,重点关注std::promise类。std::promise用于创建一个同步机制,允许在不同线程间传递数据。文章详细讲解了std::promise的构造函数和成员函数,包括get_future、set_value、set_exception等,以及如何通过std::promise在线程退出时设置值。
摘要由CSDN通过智能技术生成

一  <future>头文件简介

1 Classes

std::future

std::future_error

std::packaged_task

std::promise

std::shared_future

2 Functions

std::async

std::future_category

二 std::promise类

1 std::promise class statement

Template <class T> promise;
Template <classR&> promise<R&> // specialization : T is a reference type(R&)
Template <> promise<void>;//specialization : T is void

2 introduce std::promise

Promise对象可保存T类型的值,该值可被future对象读取(可能在另一个线程中),这是promise提供的同步的一种手段。在构造promise时,promise对象可以与共享状态关联起来,这个共享状态可以存储一个T类型或者一个由std::exception派生出的类的值,并可以通过get_future来获取与promise对象关联的对象,调用该函数之后,两个对象共享相同的共享状态(shared state)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值