跳至主要內容
Java 并发之同步工具

Java 并发之同步工具

CountDownLatch

CountDownLatch 通过计数器实现线程间的“等待-通知”机制,适用于分阶段任务同步,但不可重复使用。CountDownLatch 允许一个或多个线程等待,直到其他线程完成一组操作后再继续执行。

典型场景:主线程等待多个子线程完成任务后再汇总结果。

CountDownLatch 原理

核心机制

  • 计数器初始化:创建时指定初始计数值(如 new CountDownLatch(3))。
  • 计数递减:子线程完成任务后调用 countDown(),计数器减 1(线程不会阻塞)。
  • 等待阻塞:主线程调用 await() 会阻塞,直到计数器归零(或超时)。

钝悟...大约 11 分钟JavaJavaCore并发JavaJavaCore并发CountDownLatchCyclicBarrierSemaphore