Java并发编程:CountDownLatch示例
CountDownLatch是Java并发库java.util.concurrent中的一个同步工具类。它主要用于协调多个线程的执行顺序。
CountDownLatch的基本用法如下:
- 初始化:创建CountDownLatch对象,传入初始计数值。
CountDownLatch countDownLatch = new CountDownLatch(2);
- 等待:当某个线程调用await()方法时,它会将控制权返回给调用它的Thread。
Thread thread = new Thread(() -> {
try {
countDownLatch.await();
System.out.println("Task 1 completed");
} catch (InterruptedException e) {
e.printStackTrace();
}
}));
thread.start();
- 终止:当所有等待的线程都调用countDown()方法时,CountDownLatch会将计数减1,如果计数变为0,则所有等待的线程会立即获得执行。
总结:CountDownLatch是Java并发编程中一个非常有用的工具,用于协调多个任务的执行顺序。
还没有评论,来说两句吧...