最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

java線程池中何使用CountDownLatch和Future來實現(xiàn)等待所有線程執(zhí)行完畢并獲取返回值的

2023-04-01 10:42 作者:燕洼仙草  | 我要投稿

如果你需要使用Callable接口來替代Runnable接口來執(zhí)行任務(wù),可以使用ExecutorService.submit(Callable)方法來提交任務(wù),該方法會返回一個Future對象,該對象可以用來獲取任務(wù)的返回值。

以下是一個示例代碼,展示了如何使用CountDownLatch和Future來實現(xiàn)等待所有線程執(zhí)行完畢并獲取返回值的功能:

上述代碼與之前的示例代碼類似,但是使用了Callable接口來執(zhí)行任務(wù),提交任務(wù)的方法也由executor.submit(Runnable)變?yōu)榱薳xecutor.submit(Callable),同時List<Future> futures用來存儲每個任務(wù)的Future對象,以便在所有任務(wù)執(zhí)行完畢后獲取它們的返回值。在每個Callable任務(wù)的call()方法中,除了執(zhí)行任務(wù)之外,還使用latch.countDown()方法將計數(shù)器的值減1,并返回一個整數(shù)值1作為該任務(wù)的返回值。

在等待所有線程執(zhí)行完畢之后,可以使用Future.get()方法獲取每個任務(wù)的返回值,并將它們累加到sum變量中。最后輸出計數(shù)器的值以及所有任務(wù)的返回值之和,并關(guān)閉線程池。

執(zhí)行上述代碼的結(jié)果應(yīng)該是類似于以下的輸出:


java線程池中何使用CountDownLatch和Future來實現(xiàn)等待所有線程執(zhí)行完畢并獲取返回值的的評論 (共 條)

分享到微博請遵守國家法律
六盘水市| 平乐县| 海安县| 丽江市| 宁明县| 玉山县| 肃南| 璧山县| 东宁县| 霍城县| 象州县| 章丘市| 华宁县| 阿城市| 泸定县| 九龙县| 昭通市| 荃湾区| 拜城县| 房山区| 周宁县| 大埔县| 北流市| 南华县| 龙里县| 勐海县| 大城县| 长岭县| 正镶白旗| 阜宁县| 隆林| 怀来县| 广昌县| 福泉市| 南雄市| 磐安县| 鄄城县| 凤台县| 安顺市| 四川省| 扬州市|