<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          秒懂 CountDownLatch 與 CyclicBarrier 使用場景

          共 1220字,需瀏覽 3分鐘

           ·

          2021-10-02 01:40

          作者 | pony-zi

          來源 | https://blog.csdn.net/zzg1229059735/article/details/61191679

          相信每個想深入了解多線程開發(fā)的Java開發(fā)者都會遇到CountDownLatchCyclicBarrier,大家也在網(wǎng)上看到各種介紹原理,代碼的,以及他們區(qū)別(應(yīng)付面試)的,但是很少能講清楚:他們到底有啥作用,怎么用,應(yīng)用那些場景?為什么面試總會遇到?本文結(jié)合場景為大家加深理解。

          官方解釋

          翻譯

          CountDownLatch是一個同步的輔助類,允許一個或多個線程,等待其他一組線程完成操作,再繼續(xù)執(zhí)行。

          CyclicBarrier是一個同步的輔助類,允許一組線程相互之間等待,達(dá)到一個共同點,再繼續(xù)執(zhí)行。

          他們都是:Synchronization aid,我把它翻譯成同步輔助器,既然是輔助工具,怎么使用???哪些場景使用?。?/p>

          個人理解:CountDownLatch

          我把他理解成倒計時鎖

          場景還原

          一年級期末考試要開始了,監(jiān)考老師發(fā)下去試卷,然后坐在講臺旁邊玩著手機(jī)等待著學(xué)生答題,有的學(xué)生提前交了試卷,并約起打球了,等到最后一個學(xué)生交卷了,老師開始整理試卷,貼封條,下班,陪老婆孩子去了。

          補充場景

          我們在玩LOL英雄聯(lián)盟時會出現(xiàn)十個人不同加載狀態(tài),但是最后一個人由于各種原因始終加載不了100%,于是游戲系統(tǒng)自動等待所有玩家的狀態(tài)都準(zhǔn)備好,才展現(xiàn)游戲畫面。

          抽象圖

          每位乘客(線程)上車后,可用座位減1,直到為0,老司機(jī)就開始發(fā)車了。

          個人理解:CyclicBarrier

          可看成是個障礙,所有的線程必須到齊后才能一起通過這個障礙

          場景還原

          以前公司組織戶外拓展活動,幫助團(tuán)隊建設(shè),其中最重要一個項目就是全體員工(包括女同事,BOSS)在完成其他項目時,到達(dá)一個高達(dá)四米的高墻沒有任何抓點,要求所有人,一個不能少的越過高墻,才能繼續(xù)進(jìn)行其他項目。

          抽象圖

          解放軍叔叔完美配合,一個都不能少,繼續(xù)完成任務(wù)。

          我這里只是為了促進(jìn)大家更好的理解它們的應(yīng)用場景,詳細(xì)用法可以自行Google。

          - END -


          往期推薦

          “80后的人,真的該退出IT行業(yè)了”,某IT公司領(lǐng)導(dǎo)言論惹爭議!

          突發(fā)!LayUI宣布下線

          四種主流的 API 架構(gòu)風(fēng)格對比

          Spring Boot 2.5.5發(fā)布:開始支持Java 17了!

          任務(wù)數(shù)量超過線程池負(fù)荷了怎么辦?拒絕策略安排起來!


          技術(shù)交流群

          最近有很多人問,有沒有讀者交流群,想知道怎么加入。加入方式很簡單,有興趣的同學(xué),只需要點擊下方卡片,回復(fù)“加群,即可免費加入我們的高質(zhì)量技術(shù)交流群!

          點擊閱讀原文,送你免費Spring Boot教程!

          瀏覽 77
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧洲精品在线免费观看 | 一区二区自拍偷拍0519 | 日本高清三区 | 欧美日韩男女拍拍视频正在播放 | 亚洲国产一级黄片 |