Sobes.tech
Назад к вопросам
Junior — Middle
67

Можете привести пример, когда применяется метод wait() объекта в Java?

Ответ от нейросети

sobes.tech AI

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

Пример использования:

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

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

Это важно для реализации правильной синхронизации и избежания активного ожидания (busy-waiting).