Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Проблема с потоком


Автор: goodday1941 16.7.2007, 13:57
как узнать от том что поток уже выполнил метод run() до конца? isAlive() почему то остаеться true даже после выполнения метода run() :(

Добавлено через 5 минут и 4 секунды
йой.. туплю товарищи! все нормально isAlive() таки false

Добавлено через 9 минут и 48 секунд
тогда попутній вопрос...
можно ли стартовать один и тот же поток после того как он выполнился?

тоесть  запустили поток thread.start(), он выполнил метод run(), потом взяли и еще раз запустили этот же поток  thread.start()

Автор: ekr 16.7.2007, 14:13
Цитата(goodday1941 @  16.7.2007,  13:57 Найти цитируемый пост)
можно ли стартовать один и тот же поток после того как он выполнился?

нет. 
на диаграмме состояний потока нет перехода из состояния dead в состояние runnable )))

Автор: goodday1941 16.7.2007, 14:16
спасибо! терь будем знать! smile

Автор: Ratman 22.8.2007, 21:13
Метод main() плодит потоки. Безымянные. Известно сколько их (пусть будет переменная tc).
Как "заснуть" основной поток, до тех пор пока все новорожденные не подохнут?
Или как узнать количество потоков, жывих в данный момент?

спасибо за уделённое мне время

ЗЫ: сорр что старый топик поднимаю. Не хотелось новый создавать.



Спасибо, вопрос решен

Автор: javaman 23.8.2007, 10:56
Нужно собрать все создаваемые потоки в какую нить коллекцию, а потом по ней пробежаться и для каждого потока вызвать join

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)