Java并发编程- CountDownLatch用法
使用场景:需要在主线程等待其他子线执行完毕之后,然后再执行主线程的任务,这时需要使用CountDownLatch比较合适了。
代码例子:
public class TestCountDownLatch1 {
final static CountDownLatch latch = new CountDownLatch(2);
public static void main(String[] args) throws InterruptedException {
new Thread(new Runnable() {
public void run() {
System.out.println(1);
latch.countDown();
}
}).start();
new Thread(new Runnable() {
public void run() {
System.out.println(2);
latch.countDown();
}
}).start();
//等待子线程1和2执行完毕
latch.await();
等待子线程1和2执行完毕之后,然后打印3
System.out.println(3);
}
}
输出结果: