Java 併發程式設計之詳解工具類 CountDownLatch
阿新 • • 發佈:2018-12-25
CountDownLatch是一個在java1.5被引入同步工具類,它允許一個或多個執行緒一直等待,直到其他執行緒的操作執行完後再執行。countdownlatch在Java開發中應用場景及其廣泛,同時也是面試中的高頻考點。每一個Java程式設計師都應該熟練掌握,在本篇文章中,我將會從以下幾方面對其進行詳細講解:
一、根據原始碼刨析CountDownLatch工作原理
- 實現原理
- 原始碼解析2.1、CountDownLatch內部類Sync2.2、CountDownLatch(n)構造器2.3、countDownLatch.await()方法2.4、 countDownLatch.countDown()方法
二、CountDownLatch的應用例項
- 實現最大的並行性(馬拉松比賽同時出發)
- 開始執行前等待其它執行緒完成各自任務(開董事會等待所有董事到達)
- 死鎖檢測(檢測死迴圈)
三、CountDownLatch常見的面試題
- 介紹一下CountDownLatch工作原理?
- CountDownLatch 和CyclicBarrier的區別?
- CountDownLatch的使用場景?
- CountDownLatch 類中主要的方法?
閱讀全文: http://gitbook.cn/gitchat/activity/5c1a0ca100ef4636973b240b
一場場看太麻煩?成為 GitChat 會員,暢享 1000+ 場 Chat ! 點選檢視