2015-02-23 2 views
2

Я столкнулся с этим вопросом в одном из интервью.ждать и ждать разницы во времени?

В чем разница между ожиданием и ожиданием времени в потоках?

Я знаю метод wait. Подождите, пока текущий поток не будет ждать, пока другой поток не вызовет метод notify() или метод notifyAll() для этого объекта или не истечет определенное количество времени. Но я не уверен, что ждет времени, о котором он спрашивает.

Может ли кто-нибудь объяснить, что такое ожидание по времени?

Спасибо заранее.

+0

То же самое, что вы сказали. перегруженной версии метода wait. – Prashant

+0

Я никогда не слышал о «ожидании времени». Если бы кто-то задал мне этот вопрос на собеседовании, я бы не стал сомневаться, о чем они говорили. –

ответ

3

Они, вероятно, означает Object.wait(long timeout) против Object.wait(), читайте java.lang.Object API для деталей

+0

Не могли бы вы дать слово здесь? http://stackoverflow.com/questions/28665037/concurrency-advanced-python-and-interaction-with-different-objects – user3378649

+0

@ Evgeniy Спасибо за ваш ответ и ценное время. –

3

void wait();

Введите набор ожидания монитор, пока не уведомит другой нити.

void wait(long timeout);

Введите набор ожидания монитор, пока не уведомит другой поток или таймаут миллисекунд.

void wait(long timeout, int nanos);

Введите набор ожидания монитор, пока не уведомит другой поток или таймаута миллисекунды плюс NANOS наносекунд истечет

+1

Спасибо за ваш ответ и ценное время –

0

From Java Doc

общественности окончательное недействительным ждать (длинный тайм-аут) бросает InterruptedException

Заставляет текущий поток ждать, пока другой поток не вызовет метод notify() или метод notifyAll() для этого объекта или не истечет указанное количество времени.

+0

@ rai Спасибо за ваш ответ и ценное время. –

Смежные вопросы