CountDownLatch 使用場景

2021-10-03 22:31:42 字數 736 閱讀 5320

/**

* 第乙個使用場景

* 資料使用多執行緒的方式處理

*/public

class

countdownlatchtest

executor.

shutdown()

; latch.

await()

; system.out.

println

("main thread end");

}public

static

int[

]query()

;}}class

******thread

extends

thread

@override

public

void

run(

) system.out.

println

(thread.

currentthread()

.getname()

+" "

+ data[i]);

}catch

(interruptedexception e)}}

/** * 第二個使用場景,就是當乙個任務做完的時候,在第二個任務執行一半的時候需要用到第乙個任務的結果集

* 那麼在第二個任務使用 await 方法處理即可

*/

多執行緒 CountDownLatch

countdownlatch 允許乙個或多個執行緒等待其他執行緒完成操作。應用場景 假如有這樣乙個需求,當我們需要解析乙個excel裡多個sheet的資料時,可以考慮使用多執行緒,每個執行緒解析乙個sheet裡的資料,等到所有的sheet都解析完之後,程式需要提示解析完成。在這個需求中,要實現主線程...

執行緒同步 CountDownLatch

應用場景 有乙個任務想要往下執行,但必須要等到其他的任務執行完畢後才可以繼續往下執行。假如我們這個想要繼續往下執行的任務呼叫乙個countdownlatch物件的await 方法,其他的任務執行完自己的任務後呼叫同乙個countdownlatch物件上的countdown 方法,這個呼叫await ...

CountDownLatch 併發測試

countdownlatch,乙個同步輔助類,在完成一組正在其他執行緒中執行的操作之前,它允許乙個或多個執行緒一直等待。主要方法 public countdownlatch int count public voidcountdown public voidawait throws interrup...