Встречается на собеседованиях • сегодня

Что является монитором при работе с wait

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

Перед вызовом wait() поток должен захватить монитор объекта (войти в synchronized-блок). Если монитор не захвачен, будет выброшено IllegalMonitorStateException.

Пример:

java
synchronized (lockObject) {  // Захват монитора lockObject
    while (!condition) {
        lockObject.wait();   // Освобождает монитор и ждёт
    }
    // После пробуждения снова захватывает монитор
}

Монитор обеспечивает взаимное исключение и координацию потоков через методы wait(), notify().

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы