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


Автор: Gregorian 18.12.2006, 23:17
Для чего в каждом объекте присутствуют методы wait и notify? Как ими пользоваться? 
Объясните пожалуйста.

Автор: Шмель 18.12.2006, 23:24
http://vingrad.ru/JAVA-JAVA-000102

Автор: Gregorian 18.12.2006, 23:25
Ух спасибо! Сейчас посмотрю. Я не заметил что у вас FAQ есть.

Автор: kkorsakoff 18.12.2006, 23:27
Нужны, когда работаешь с несколькими потоками.
wait() - заставляет текущий поток ждать, пока его разбудят через notify() или пока не пройдет заданный интервал времени

notify() - будит тот поток, который ранее вызвал wait() на данном объекте.

Это надо читать про многопоточное программирование. К сожалению мануала кинуть не могу, т.к. есть бумажные книгиsmile

Почему они есть у каждого объекта, потому что эти методы определены у Object. Зачем именно так сделали, видимо для удобства. Чтобы для целей синхронизации можно было использовать любой объект.
Но это мои личные догадки, правду уже не помню.

Автор: Gregorian 18.12.2006, 23:46
Я в книжке про synchronize понял, а вот wait не очень... Сейчас FAQ читаю.

Автор: kkorsakoff 19.12.2006, 05:50
Главное понять, как синхронизация осуществляется в яве...не так просто бываетsmile

Автор: batigoal 19.12.2006, 11:11
Вообще, механизм многопоточности вот здесь очень хорошо расписан:
http://java.sun.com/docs/books/tutorial/essential/concurrency/index.html

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