#include "Future.h"
#include <thread>
#include <future>
int GetFutureResult()
{
Sleep(10000);
return 10;
}
int TestFuture()
{
std::future<int> sFutureResult = std::async(GetFutureResult);
//------------------------------------------------------------------
//这里可以先做些复杂的工作,以便future线程先完成工作
Sleep(8000);
//------------------------------------------------------------------
//如果GetFutureResult完成了,会马上返回。否则阻塞等待thread完成
int answer = sFutureResult.get();
printf( "%d" , answer );
}
Future模式
最新推荐文章于 2020-04-01 16:31:32 发布