我想创建一个从0到4的for循环但我的问题是我只知道每次如何启动一个线程。
thread t1(eat,"hello");
thread t2(eat,"hello");
所以我的问题是如何在循环中一次启动多个线程?
答案 0 :(得分:2)
您可以执行以下操作,只需在向量 1 中就地构建它们:
std::vector<std::thread> ts;
for (int i = 5; i > 0; --i)
ts.emplace_back(eat, "hello");
1 Reserving提前记忆(假设你知道多少)也可以。