我想在async()中执行一个循环。
#include<stdio.h>
#include<thread>
#include<iostream>
#include <future>
using namespace std;
void Compute( int i)
{
printf("i=%d\n",i);
std::this_thread::sleep_for(std::chrono::seconds(1));
}
int main()
{
for(int i=0;i<99999;++i)
std::async(std::launch::async, Compute, i);
}
结果是循环将完成作业,然后跳转到下一次迭代。 例如, I = 0 - &GT;(1秒) - I标记= 1 - &GT;(1秒) - I标记= 2 - &GT; .... 如何在不等待最后一次迭代的情况下连续进行?