c++ - C++ 多线程循环
问题描述
我想在 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-->(1sec)-->i=1-->(1sec)-->i=2-->.... 不等最后一次迭代怎么连续做呢?
解决方案
推荐阅读
- python - Panda groupby:计算满足其他列条件的行?
- phoenix-framework - 使用 Ecto.Multi 更新父记录和动态子记录
- outlook - 预约状态 - EWS 托管 API
- mysql - 处理 group by 子句中的逗号分隔值
- javascript - 如何模拟异步函数的返回值?
- angular - 在功能测试中链接 Promises/Observable 的最优雅方式
- mysql - SQL - 多对多的选择?
- elasticsearch - 弹性搜索词建议
- django - 如何在 Django 中按父模型的 ForeignKey 排序
- amazon-web-services - 我可以在 cftemplate 格式中将 fn::join 放在 fn::if 语句中吗