自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

我們一起聊聊并發(fā)編程:同步工具類

開發(fā) 開發(fā)工具
CyclicBarrier 所要同步的線程個數(shù)是在構(gòu)造方法中指定的,之后不能更改,而 Phaser 可以在運行 期間動態(tài)地調(diào)整要同步的線程個數(shù)。

一、Semaphore

Semaphore也就是信號量,提供了資源數(shù)量的并發(fā)訪問控制。

使用場景:大學(xué)生到自習(xí)室搶座,寫作業(yè)。

二、CountDownLatch

假設(shè)一個主線程要等待5個 Worker 線程執(zhí)行完才能退出,可以使用CountDownLatch來實現(xiàn)。

三、CyclicBarrier

該類用于協(xié)調(diào)多個線程同步執(zhí)行操作的場合。

使用場景:10個工程師一起來公司應(yīng)聘,招聘方式分為筆試和面試。首先,要等人到齊后,開始筆 試;筆試結(jié)束之后,再一起參加面試。

四、Exchanger

Exchanger用于線程之間交換數(shù)據(jù)。

五、Phaser

用Phaser替代CyclicBarrier和CountDownLatch。

從JDK7開始,新增了一個同步工具類Phaser,其功能比CyclicBarrier和CountDownLatch更加強大。

特性1:動態(tài)調(diào)整線程個數(shù)

CyclicBarrier 所要同步的線程個數(shù)是在構(gòu)造方法中指定的,之后不能更改,而 Phaser 可以在運行 期間動態(tài)地調(diào)整要同步的線程個數(shù)。

特性2:層次Phaser

多個Phaser可以組成如下圖所示的樹狀結(jié)構(gòu)

責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2023-07-11 08:34:25

參數(shù)流程類型

2023-08-10 08:28:46

網(wǎng)絡(luò)編程通信

2024-02-26 00:00:00

Go性能工具

2021-08-27 07:06:10

IOJava抽象

2024-02-20 21:34:16

循環(huán)GolangGo

2023-08-04 08:20:56

DockerfileDocker工具

2022-05-24 08:21:16

數(shù)據(jù)安全API

2023-09-10 21:42:31

2023-06-30 08:18:51

敏捷開發(fā)模式

2023-11-29 07:10:50

python協(xié)程異步編程

2023-06-30 08:27:20

2022-02-14 07:03:31

網(wǎng)站安全MFA

2022-06-26 09:40:55

Django框架服務(wù)

2022-10-28 07:27:17

Netty異步Future

2023-04-26 07:30:00

promptUI非結(jié)構(gòu)化

2022-04-06 08:23:57

指針函數(shù)代碼

2023-12-28 09:55:08

隊列數(shù)據(jù)結(jié)構(gòu)存儲

2022-11-12 12:33:38

CSS預(yù)處理器Sass

2023-07-27 07:46:51

SAFe團隊測試

2025-03-27 02:00:00

SPIJava接口
點贊
收藏

51CTO技術(shù)棧公眾號