您当前的位置: 首页 >  c++

令狐掌门

暂无认证

  • 3浏览

    0关注

    513博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

C++11多线程(十):packaged_task类的用法

令狐掌门 发布时间:2020-02-23 16:48:36 ,浏览量:3

        std::packaged_task它包装了一可调用的目标(如function, lambda expression, bind expression, or another function object)以便异步调用,它和promise在某种程度上肴点像,promise保存了状态共享的值,而packaged_task保存的是一个函数。

        使用std::packaged_task需要包含如下头文件

#include
using namespace  std;

        get_future函数

future get_future()
		{	// return a future object that shares the associated
			// asynchronous state
		return (future(_MyPromise._Get_state_for_future(), _Nil()));
		}

   获取与共享状态相关联的std::future对象,在调用该函数之后,两个对象共享相同的共享状态,具体解障如下:

(1)std::packaged_task 对象是异步Provider,它在某一时刻通过调用被包装的任务来设置共享状态的值.

(2)std::future 对象时一个异步返回对象,通过它

关注
打赏
1652240117
查看更多评论
立即登录/注册

微信扫码登录

0.0488s