latch翻譯成中文_LATCH是啥意思

首頁 > 汽車 > 汽車資訊 > 正文

latch翻譯成中文_LATCH是啥意思

latch翻譯成中文_LATCH是啥意思

一、簡介

CountDownLatch是線程同步輔助類,使用這個輔助類可以讓線程等待其他線程完成一組操作后才能執行,否則一直等待。

二、大致原理

構造器采取一個整數來初始化等待其他線程的數量,使用await()方法讓線程開始等待其他線程執行完畢,每一個線程執行完成后需調用countDown()方法,這個方法會讓計數器-1(AQS的state),當計數器為0的時候,CountDownLatch類將喚醒所有調用await()方法的線程。 其實就是初始化state=n,然后每次countDown都調用release方法進行-1。這些都是aqs的知識,早就講過了。

三、Demo

1、需求

完成這樣的一個需求,大家視頻會議,一共10個人,都到齊了后就開始視頻會議,沒到齊的話領導(主線程)是不會講話的。

2、源碼

3、輸出結果

4、結果分析

  • 首先輸出等待人數:10
  • 然后進入await(),代表著進入WAITING狀態,等待其他10個線程都完事后才會叫醒此線程
  • 每次只需countDown都代表著線程執行完畢1次。
  • ...
  • 最后輸出還有0人沒到,這時候代表其他線程都執行完畢,會喚醒所有調用await()方法的線程
  • 輸出人都來全了,我們開始開會...

四、應用場景

1、比如對于馬拉松比賽,進行排名計算,參賽者的排名,肯定是跑完比賽之后,進行計算得出的,翻譯成Java識別的預發,就是N個線程執行操作,主線程等到N個子線程執行完畢之后,在繼續往下執行。2、也可以作為系統資源的有效回收,比如N個線程在操作文件,操作完成后主線程進行文件整理等操作

五、源碼解讀

1、類架構

2、構造器

3、await()方法

4、countDown()方法

備案號:贛ICP備2022005379號
華網(http://www.acmerblog.com) 版權所有未經同意不得復制或鏡像

QQ:51985809郵箱:51985809@qq.com

久久99久久99小草精品免视看 | 精品国产免费一区二区| 国内精品国产成人国产三级 | 国产精品视频公开费视频| 久久精品福利视频| HEYZO无码综合国产精品227| 精品国产一区二区三区久久久狼 | 国产成人A∨麻豆精品| 久久精品无码中文字幕| 久久亚洲国产精品| 精品久久久久久99人妻| 午夜精品福利影院| 四虎精品视频在线永久免费观看| 中文字幕久精品免费视频| 国产av一区二区精品久久凹凸| 2017国产精品自拍| 亚洲精品免费在线观看| 日韩精品无码一区二区三区四区| 国产精品伦子一区二区三区| 青娱乐2017年精品视频在线| 日韩精品人妻系列无码专区| 中文字幕日韩精品有码视频 | 久久老子午夜精品无码怎么打| 亚洲性日韩精品国产一区二区| 9999国产精品欧美久久久久久| 亚洲国产精品成人综合色在线婷婷| 中文字幕在线精品视频入口一区 | 无码精品A∨在线观看免费| 99久久综合精品国产| 国产精品亲子乱子伦xxxx裸| 国产午夜亚洲精品理论片不卡 | 日韩中文字幕精品免费一区| 无码精品一区二区三区在线| 亚洲精品无码永久中文字幕| 国产精品福利区一区二区三区四区| 热久久99精品这里有精品| 日韩精品成人无码专区免费| 国产香蕉精品视频| 国产精品一久久香蕉国产线看| 91大神精品视频| 亚洲国产精品综合久久久|