欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java多線程中的CyclicBarrier詳解

 更新時(shí)間:2023年11月20日 11:14:01   作者:夢斷淚影  
這篇文章主要介紹了Java多線程中的CyclicBarrier詳解,同步屏障,允許一組線程互相等待以到達(dá)一個(gè)公共的障礙點(diǎn),當(dāng)設(shè)定的線程數(shù)到達(dá)屏障時(shí),阻塞的線程繼續(xù)執(zhí)行,需要的朋友可以參考下

什么是CyclicBarrier

同步屏障,允許一組線程互相等待以到達(dá)一個(gè)公共的障礙點(diǎn)。當(dāng)設(shè)定的線程數(shù)到達(dá)屏障時(shí),阻塞的線程繼續(xù)執(zhí)行。

構(gòu)造方法

  • CyclicBarrier(int parties),parties設(shè)定的阻礙線程數(shù)。
  • CyclicBarrier(int parties, Runnable barrierAction),barrierAction任務(wù),設(shè)定的線程數(shù)都到達(dá)屏障時(shí),才會(huì)執(zhí)行。

模擬場景

景區(qū)游覽車,一次坐滿20人就發(fā)車,公司團(tuán)建共去了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();
        }
    }
}

到此這篇關(guān)于Java多線程中的CyclicBarrier詳解的文章就介紹到這了,更多相關(guān)CyclicBarrier詳解內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論