CyclicBarrier簡單用法

炸雞啤酒不可負發表於2020-09-22
簡單用法:
public static void main(String[] args) {
//CyclicBarrier barrier = new CyclicBarrier(20);
    CyclicBarrier barrier = new CyclicBarrier(20, () -> System.out.println("滿人了")); //每滿20會執行
    /*CyclicBarrier barrier = new CyclicBarrier(20, new Runnable() {
        @Override
        public void run() {
            System.out.println("滿人,發車");
        }
    });*/
    for(int i=0; i<100; i++) {
            new Thread(()->{
                try {
                    barrier.await(); //這邊阻塞,每到滿20會繼續執行下去
                } catch (InterruptedException e) {
                    e.printStackTrace();
                } catch (BrokenBarrierException e) {
                    e.printStackTrace();
                }
            }).start();
        
    }
}
輸出:
滿人了
滿人了
滿人了
滿人了
滿人了


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69983799/viewspace-2723190/,如需轉載,請註明出處,否則將追究法律責任。

相關文章