C++11
实现线程函数,其参数为std::promise类型,该线程函数挪用promise的接口set_value进行传值

本家儿线程中界说promise对象,然后经由过程这个对象获取future对象

启动线程函数,然后将上一步调界说的promise对象经由过程指针传递进去

然后本家儿线程经由过程挪用future的函数get来梗阻期待线程的返回值

调试运行输出如下成果,从这个成果可以看出future当作功获取线程返回的值

最后再来总结下,先界说promise对象,从promise对象获取futrue对象, 接着启动线程,线程经由过程promise对象将值传递归去,而本家儿线程挪用future对象梗阻期待

别的需要注重的是promise的set_value只能设置一次,而且凡是promise与future配对利用

若是promise的set_value设置两次,就会呈现如下图所示的错误,然后程序退出

0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!