Какова цель использования метода wait() в объекте класса Object в Java?

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

Короткий ответ

Что ответить на собеседовании

Метод wait() используется для приостановки выполнения текущего потока до тех пор, пока другой поток не вызовет notify() или notifyAll() на том же объекте. Это ключевой механизм для организации взаимодействия между потоками в Java, позволяющий одному потоку ждать определённого условия, освобождая при этом монитор объекта.

Подробный разбор

Ответ с пояснениями

Метод wait() используется для приостановки выполнения текущего потока до тех пор, пока другой поток не вызовет notify() или notifyAll() на том же объекте. Это ключевой механизм для организации взаимодействия между потоками в Java, позволяющий одному потоку ждать определённого условия, освобождая при этом монитор объекта.

Пример:

synchronized(obj) {
    while (!condition) {
        obj.wait(); // поток ждёт, пока condition не станет true
    }
    // продолжить работу
}

Здесь поток ждёт, пока условие не выполнится, и не блокирует CPU, позволяя другим потокам изменить состояние и вызвать notify().

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее