Java多線程中的CyclicBarrier詳解
更新時間:2023年11月20日 11:14:01 作者:夢斷淚影
這篇文章主要介紹了Java多線程中的CyclicBarrier詳解,同步屏障,允許一組線程互相等待以到達一個公共的障礙點,當設定的線程數到達屏障時,阻塞的線程繼續(xù)執(zhí)行,需要的朋友可以參考下
什么是CyclicBarrier
同步屏障,允許一組線程互相等待以到達一個公共的障礙點。當設定的線程數到達屏障時,阻塞的線程繼續(xù)執(zhí)行。
構造方法
- CyclicBarrier(int parties),parties設定的阻礙線程數。
- CyclicBarrier(int parties, Runnable barrierAction),barrierAction任務,設定的線程數都到達屏障時,才會執(zhí)行。
模擬場景
景區(qū)游覽車,一次坐滿20人就發(fā)車,公司團建共去了100人。
public class TestCyclicBarrier {
public static void main(String[] args) {
CyclicBarrier barrier = new CyclicBarrier(20, new Runnable() {
@Override
public void run() {
System.out.println("滿人,發(fā)車");
}
});
for(int i=0; i<100; i++) {
new Thread(()->{
try {
barrier.await();
} catch (InterruptedException e) {
e.printStackTrace();
} catch (BrokenBarrierException e) {
e.printStackTrace();
}
}).start();
}
}
}
到此這篇關于Java多線程中的CyclicBarrier詳解的文章就介紹到這了,更多相關CyclicBarrier詳解內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:
相關文章
SpringBoot?使用?Sa-Token?完成權限認證的操作方法
Sa-Token是一款輕量級Java權限認證框架,適用于快速搭建權限系統,它提供了豐富的功能,下面給大家介紹SpringBoot?使用?Sa-Token?完成權限認證的相關操作,感興趣的朋友跟隨小編一起看看吧2025-02-02
在Java中,生成隨機數有兩種方法。1是使用Random類。2是使用Math類中的random方法??聪旅娴睦邮褂冒?/div> 2013-11-11最新評論

