CountDownLatch является частью пакета java.util.concurrent и представляет собой механизм синхронизации, который позволяет одному или нескольким потокам ждать, пока определенное количество других потоков завершат выполнение своих задачи. Это особенно полезно в ситуациях, когда один поток зависит от выполнения нескольких других потоков. При создании экземпляра CountDownLatch необходимо установить начальное значение для счетчика операций. Этот счетчик уменьшается на единицу каждый раз, когда поток завершает работу. В то же время другой поток, ожидающий завершения операций, блокируется до тех пор, пока счетчик не станет равным нулю. После уменьшения счетчика до нуля, CountDownLatch не может быть сброшен или использован повторно. Если вам нужно многократно синхронизировать выполнение потоков, вам может потребоваться создать новый экземпляр CountDownLatch. CountDownLatch является потокобезопасным и может использоваться несколькими потоками одновременно без дополнительной синхронизации. Приме