std future使用(简单)

匿名 (未验证) 提交于 2019-12-02 22:56:40
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/river472242652/article/details/82965264
#include <iostream> #include <vector> #include <thread> #include <functional> #include <atomic> #include <mutex> #include <future> /**  *std future作用  1取回另一个线程计算结果  可以将future /promise当成线程间传递结果的通信信道  std::packaged_task();自动将一个future与promise联系在一起  2防止线程中出现异常后终止整个程序(线程本身处理异常)  *Date :[10/8/2018 ]  *Author :[RS]  */ int calculate() { 	std::this_thread::sleep_for(std::chrono::seconds(5)); 	std::cout << "异步中" << std::endl; 	return 123; }  int main() { 	auto fut = std::async(calculate); 	 	std::cout << "非异步" << std::endl; 	int res = fut.get(); 	std::cout << res << std::endl;  	system("pause"); 	return 0; } 
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!