上山打老虎 发表于 2021-7-20 22:04:58

Concurrency::task(C++)

Concurrency::task(C++)
先看一个例子
#include <ppltasks.h>
#include <iostream>
using namespace Concurrency;
using namespace std;
int main()
{
    task<int> t([]() {
      return 10;
    });

    t.wait();
    wcout << t.get() << endl;
   return 0;
}

输出 10
先解释下这段程序做了什么,task<int>定义了一个并行任务并设定会返回int型值,t的初始化用到了Lambda表达式,其中就涉及到一个异步处理(return 10),wait()会等待异步处理结束,从get()方法能得到异步处理的返回值。


文档来源:51CTO技术博客https://blog.51cto.com/u_15304158/3143586
页: [1]
查看完整版本: Concurrency::task(C++)