я просто испытанного что-то вроде этого:Сообщений в цикле
boost::thread workerThread1(boost::bind(&Class::Function, this, ...);
boost::thread workerThread2(boost::bind(&Class::Function, this, ...);
и она отлично работает. Теперь я хочу, чтобы создать столько потоков, сколько у меня есть объектов в списке. У меня есть эксперимент с boost :: foreach, и это отлично работает. Но у меня проблемы с именами потоков.
Так упростил код выглядит следующим образом:
for
{
boost:thread name(...);
}
но, конечно, название не может быть здесь в цикле, потому что он переписывает себя и разве доступен после цикла. Как создать потоки, чтобы я мог присоединиться к ним, ведь все они были созданы?
Хороший пример, но не должно быть thread.add (name) ;? – Patrick87
@ Patrick87 Хороший улов. Я полагаю, что это не идеальный код, это не очень хорошее оправдание :-) – Firedragon
Вы должны использовать интеллектуальные указатели, чтобы избежать утечек памяти. –