Название: Не создаются потоки Отправлено: dware от Июнь 23, 2010, 20:48 пытаюсь создать 3 потока в main в цикле while:
Код: #include <QtGui/QApplication> но в итоге ничего не создаётся. хотя если вручную создать эти 3 потока, то все создаются и работают. почему так? Название: Re: Не создаются потоки Отправлено: BRE от Июнь 23, 2010, 20:50 Сначала нужно выучить C++! Обязательно! ;)
hint: при выходе из цикла все локальные переменные разрушаются. Название: Re: Не создаются потоки Отправлено: zenden от Июнь 23, 2010, 20:51 ну наверно потому, что вы создаете объекты MyThread и QTimer в стеке и при выходе из блока (вернее на каждом шаге цикла) они уничтожаются ;)
Название: Re: Не создаются потоки Отправлено: dware от Июнь 23, 2010, 20:53 уничтожаются, да, но до этого они должны создаться и поработать. или нет?))
Название: Re: Не создаются потоки Отправлено: BRE от Июнь 23, 2010, 20:54 уничтожаются, да, но до этого они должны создаться и поработать. или нет?)) Не успевают они. :)Название: Re: Не создаются потоки Отправлено: dware от Июнь 23, 2010, 20:55 а как тогда создать устанавливаемое пользователем количество потоков?
Название: Re: Не создаются потоки Отправлено: BRE от Июнь 23, 2010, 20:59 Не обижайся, но очень рекомендую:
Цитировать Сначала нужно выучить C++! Обязательно! Методом тыка можно заставить что-то заработать, но работать оно будет плохо. :) Название: Re: Не создаются потоки Отправлено: dware от Июнь 23, 2010, 21:05 я не спорю, что знаю неважно. в универе требуют лабораторную - многопоточное приложение, хотя эта тема нам совсем не объяснялась. в страуструпе про потоки ничего не нашёл (есть про те, которые stream, а не про те, которые thread). вот и мучаюсь)
Название: Re: Не создаются потоки Отправлено: BRE от Июнь 23, 2010, 21:11 я не спорю, что знаю неважно. в универе требуют лабораторную - многопоточное приложение, хотя эта тема нам совсем не объяснялась. в страуструпе про потоки ничего не нашёл (есть про те, которые stream, а не про те, которые thread). вот и мучаюсь) В данном случае, самый простой способ создать их в куче, т.е. через оператор new, тогда они будут жить и после выхода из блока цикла.Название: Re: Не создаются потоки Отправлено: lit-uriy от Июнь 23, 2010, 22:03 хреново, когда программа обучения дошла уже до потоков, а знания о времени жизни (и области видимости) переменных - нуль
Название: Re: Не создаются потоки Отправлено: dware от Июнь 25, 2010, 03:08 BRE, спасибо, разобрался
|