手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

如何调用async进行异步操作

时间:2024-10-13 02:42:02

1、调用async函数之前,需要添加头文件future

如何调用async进行异步操作

2、定义实现如下图所示的线程回调函数,入参是字符串类型,返回值是整型

如何调用async进行异步操作

3、调用std::async,传入回调函数以及回调函数对应的入参值,返回st蟠校盯昂d::future类型对象,该对象用于获取异步线程返回的值

如何调用async进行异步操作

4、使用std::futrue的函数wait_for超时等待,根据返回的值来判断线程函数是否已经结束

如何调用async进行异步操作

5、std::futrue提供的函数get,可以获取线程函数返回结果

如何调用async进行异步操作

6、调试运行输出的信息如下所示,从信息看符合预期,get获取到线程函数返回的结果值

如何调用async进行异步操作

7、可以采用如下的方式来循环获取异步线程执行的结果,如果返回timeout表示超时,如果返回ready表示任务完成,如果返回deferred表示还没启动线程

如何调用async进行异步操作

8、运行结果如下,循环查询过程中,出现一次timeout,表明线程函数还没有执行完毕

如何调用async进行异步操作
© 手抄报圈