如何在C++中实现异步操作

avatar
作者
筋斗云
阅读量:0

在C++中实现异步操作有多种方法,以下是其中一种使用std::async的简单示例:

#include <iostream> #include <future> #include <chrono>  int fetchData() {     // 模拟耗时操作     std::this_thread::sleep_for(std::chrono::seconds(2));     return 42; }  int main() {     // 使用std::async创建一个异步任务     std::future<int> future_result = std::async(std::launch::async, fetchData);      // 在主线程中可以执行其他操作      // 获取异步操作的结果     int result = future_result.get();          // 输出结果     std::cout << "Result: " << result << std::endl;      return 0; } 

在上面的示例中,fetchData函数模拟了一个耗时的操作,通过std::async创建了一个异步任务,并在主线程中执行其他操作。最后通过future_result.get()获取异步操作的结果。其他的实现方法还有使用std::threadboost::asio等。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!