Монитор - это фундаментальная концепция, которую вы должны понимать.Об этом лучше где-то почитать.
Короче, могу сказать, что есть несколько основных принципов:
- Если поток входит в синхронизированный блок - монитор синхронизируетсяобъект заблокирован, и все остальные потоки не смогли выполнить синхронизированный блок (они находятся в наборе ввода).
- Если вы вызываете метод wait () для синхронизированного объекта, то поток переходит к ожиданию набора
- Если вы вызываете метод notify () / notifyAll () для синхронизированного объекта, это означает, что один / все потоки переходят в набор ввода из набора ожидания.
Ответ на ваш вопросis - когда вы вызываете метод notifyAll (), все потоки из набора ожидания переходят в набор ввода.