zoukankan      html  css  js  c++  java
  • java面试-CountDownLatch、CyclicBarrier、Semaphore谈谈你的理解

    一、CountDownLatch

    主要用来解决一个线程等待多个线程的场景,计数器不能循环利用

    public class CountDownLatchDemo {
    
        public static void main(String[] args) throws InterruptedException {
            CountDownLatch countDownLatch = new CountDownLatch(6);
            for (int i = 1; i <= 6; i++) {
                new Thread(() -> {
                    System.out.println(Thread.currentThread().getName() + " 上完自习,离开教室");
                    countDownLatch.countDown();
                }, String.valueOf(i)).start();
            }
            countDownLatch.await();
            System.out.println(Thread.currentThread().getName() + " 班长最后关门走人");
        }
    }
    

    二、CyclicBarrier

    是一组线程之间互相等待,计数器可以循环利用。

     

  • 相关阅读:
    base64模块的使用
    14-类的结构之一:属性
    13-类和对象
    12-数组的常见异常
    11-Arrays工具类的使用
    10-二维数组
    09-一维数组
    08-数组的概述
    07-流程控制
    06-运算符
  • 原文地址:https://www.cnblogs.com/wjh123/p/11123425.html
Copyright © 2011-2022 走看看