使用for循环进行线程

时间:2016-10-30 15:39:10

标签: c++ multithreading

我想创建一个从0到4的for循环但我的问题是我只知道每次如何启动一个线程。

thread t1(eat,"hello");
thread t2(eat,"hello");

所以我的问题是如何在循环中一次启动多个线程?

1 个答案:

答案 0 :(得分:2)

您可以执行以下操作,只需在向量 1 中就地构建它们:

std::vector<std::thread> ts;

for (int i = 5; i > 0; --i)
  ts.emplace_back(eat, "hello");

1 Reserving提前记忆(假设你知道多少)也可以。