CountDownLatch:
countDown().await().await() несколько раз, но счетчик не сбрасывается.CyclicBarrier:
await(), пока все ожидаемые потоки не достигнут барьера.Сравнительная таблица:
| Характеристика | CountDownLatch | CyclicBarrier |
|---|---|---|
| Назначение | Один/несколько ждут других | Группа потоков синхронизируется |
| Сброс состояния | Нет | Да |
| Потоки для ожидания | Те, которые вызывают await() | Все, кто должен достичь барьера |
| Опциональное действие | Нет | Да |