Java 并发编程之详解工具类 CountDownLatch

CountDownLatch是一个在java1.5被引入同步工具类,它允许一个或多个线程一直等待,直到其他线程的操作执行完后再执行。countdownlatch在Java开发中应用场景及其广泛,同时也是面试中的高频考点。每一个Java程序员都应该熟练掌握,在本篇文章中,我将会从以下几方面对其进行详细讲解:

一、根据源码刨析CountDownLatch工作原理

  1. 实现原理
  2. 源码解析2.1、CountDownLatch内部类Sync2.2、CountDownLatch(n)构造器2.3、countDownLatch.await()方法2.4、 countDownLatch.countDown()方法

二、CountDownLatch的应用实例

  1. 实现最大的并行性(马拉松比赛同时出发)
  2. 开始执行前等待其它线程完成各自任务(开董事会等待所有董事到达)
  3. 死锁检测(检测死循环)

三、CountDownLatch常见的面试题

  1. 介绍一下CountDownLatch工作原理?
  2. CountDownLatch 和CyclicBarrier的区别?
  3. CountDownLatch的使用场景?
  4. CountDownLatch 类中主要的方法?

阅读全文: http://gitbook.cn/gitchat/activity/5c1a0ca100ef4636973b240b

一场场看太麻烦?成为 GitChat 会员,畅享 1000+ 场 Chat !点击查看

猜你喜欢

转载自blog.csdn.net/valada/article/details/85240677