@Rivares1853

Как динамически создать n-ое количество потоков в с++ std::thread?

Изначально мне неизвестно сколько нужно создать потоков. Как это обойти или всё-таки есть решение создать потоки динамически?
  • Вопрос задан
  • 2751 просмотр
Решения вопроса 1
#include "stdafx.h"
#include <thread>
#include <vector>
#include <iostream>

void foo(std::size_t i)
{
	// nothing to do
}

int main()
{
	std::vector<std::thread> ths;
	std::size_t n;
	std::cin >> n;
	for (std::size_t i = 0; i < n; ++i)
		ths.push_back(std::thread(&foo, i));
	for (auto & th : ths)
		th.join();
	return 0;
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы