线程
文章平均质量分 70
Luck-Dream
努力才有希望
展开
-
C++之std::async
会阻塞当前调用线程,直到异步执行结束并获得结果,如果异步执行已经结束,直接获得结果;cout<<"调用结果:"<<result.get() <<endl;结果验证了不调用get函数是不会执行异步函数的,也就是不会阻塞到调用的线程。cout << "主函数启动线程结束" << endl;cout << "主函数启动线程结束" << endl;cout << "主函数启动线程结束" << endl;cout << "主函数启动线程结束" << endl;函数时,同步调用的函数才真正执行,否则不执行。原创 2024-02-23 14:53:50 · 881 阅读 · 0 评论 -
C++之std::thread线程
/ thFun为线程需要调用的函数,10为thFun函数的参数。,创建新线程的作用域结束后,有可能线程仍然在执行,这时局部变量随着作用域的完成都已销毁,如果线程继续使用局部变量的。std::thread是C++11线程库提供的线程创建。参数绑定的是线程需要调用的函数与参数。使用detach分离调用的时候一定注意参数,因为存在作用域问题,不要使用当前作用域的数据传参。//会阻塞当前代码,等待线程完成退出后,才会继续向下执行;注意:一定在线程销毁前调用线程的调用方式。原创 2024-02-21 13:56:55 · 414 阅读 · 0 评论