循环中的C ++多线程

时间:2018-05-22 15:49:42

标签: c++ multithreading

我想在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; .... 如何在不等待最后一次迭代的情况下连续进行?

0 个答案:

没有答案