Мне нужна помощь в понимании преимуществ использования CountDownLatch по сравнению с традиционным ожиданием-уведомлением. Я думаю, что notifyAll() действительно делает то же самое, и кажется проще в использовании (может быть, из-за знакомства)
Кроме того, в чем разница между wait() и await() из CountDownLatch?
Спасибо!
РЕДАКТИРОВАТЬ: Думаю, мне нужно перефразируя мои запросы:
Await() в соответствии с документацией говорит:
Заставляет текущий поток ждатьдо тех пор, пока защелка не совершит обратный отсчет до нуля, если поток не прерван.
Для меня трудно увидеть разницу между ожиданием() и ожиданием() - await() действительно использует ожидание() под прикрытием, и, кажется, есть неявный метод notifyAll(), когда счетчик достигает нуля.
Что я имел в виду спросите, почему бы мне просто не использовать механизм wait-notifyAll() (с моей собственной обработкой переменной счетчика), а не использовать CountDownLatch?