執行緒同步 CountDownLatch

2021-07-26 22:51:50 字數 673 閱讀 7359

應用場景:

有乙個任務想要往下執行,但必須要等到其他的任務執行完畢後才可以繼續往下執行。

假如我們這個想要繼續往下執行的任務呼叫乙個countdownlatch物件的await()方法,其他的任務執行完自己的任務後呼叫同乙個countdownlatch物件上的countdown()方法,這個呼叫await()方法的任務將一直阻塞等待,直到這個countdownlatch物件的計數值減

到0為止。

主要方法:

public countdownlatch(int count);

public voidcountdown();

public voidawait() throws interruptedexception                             

此方法休眠中斷條件: countdownlatch 內部計數器到達0或者特定的時間過去了。

public void await(long timeout, timeunit unit) throws interruptedexception                  此方法休眠中斷條件: countdownlatch 內部計數器到達0或者特定的時間過去了。

java執行緒同步之CountDownLatch

1 類說明 jdk的concurrent包中的countdownlatch類是乙個執行緒同步的輔助類,它使得執行緒可以一直等待在其它執行緒中執行的操作,直到此操作結束。countdownlatch在初始化的時候指定乙個大小值n,呼叫countdownlatch的await方法的執行緒會陷入等待之中,...

多執行緒條件通行工具 CountDownLatch

countdownlatch的作用是,執行緒進入等待後,需要計數器達到0才能通行。例子1 主線程建立了若干子執行緒,主線程需要等待這若干子執行緒結束後才結束。例子2 執行緒有若干任務,分多個執行緒來完成,需要等待這若干任務被完成後,才繼續執行處理。原始碼 since 1.5 author doug ...

同步 執行緒同步

操作執行的先後順序。同步指兩個或兩個以上隨時間變化的量在變化過程中保持一定的相對關係。同步 英語 synchronization 指對在乙個系統中所發生的事件 event 之間進行協調,在時間上出現一致性與統一化的現象。在系統中進行同步,也被稱為及時 in time 同步化的 synchronous...