![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Ak47black |
|
||||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2205 Регистрация: 2.12.2005 Репутация: нет Всего: 0 |
Здравствуйте.
Никак не могу понять как правильно разбудить поток. Тестовый код выглядит так TestClass
Использоваю так
Хочу сделать что-бы главный поток замораживался и ждал извещения от другого созданного потока который реализует класс TestClass. На этом месте
получаю
Вроде-бы всё в порядке. Переменная mainThread действительно является главный потоком, который замораживается. Это сообщение отредактировал(а) Ak47black - 1.5.2010, 20:29 |
||||||||
|
|||||||||
| Skynin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 359 Регистрация: 1.7.2007 Где: Харьков Репутация: 6 Всего: 10 |
Потому что wait() вызывается для объекта test, а notify() для mainThread, причем без захвата монитора объекта (synchronized)
Взаимодействие между потоками в Java. Wait и notify. В примерах можно убрать private static final Object monitor = new Object(); заменив объект блокирования monitor на this А также: "Случайный" выход из Object.wait() |
|||
|
||||
| Ak47black |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2205 Регистрация: 2.12.2005 Репутация: нет Всего: 0 |
Спасибо Вам Skynin, почитал и помогло
Это сообщение отредактировал(а) Ak47black - 2.5.2010, 21:38 |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |