【juc】cyclicbarrier人数凑齐发车

news/2024/5/20 8:11:08 标签: juc

目录

        • 一、截图示例
        • 二、代码示例

一、截图示例


在这里插入图片描述

二、代码示例
package com.learning.cyclicbarrier;

import lombok.extern.slf4j.Slf4j;

import java.util.concurrent.CyclicBarrier;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

/**
 * @Author wangyouhui
 * @Description 循环栅栏
 **/
@Slf4j
public class Learning_01<main> {
    public static void main(String[] args) {
        ExecutorService service = Executors.newFixedThreadPool(3);
        CyclicBarrier barrier = new CyclicBarrier(3, ()->{
           log.info("3个人已凑齐,发车");
        });

        for (int i = 0; i < 10; i++) {
            int j = i+1;
            service.submit(()->{
                try {
                    Thread.sleep(1000);
                    log.info("第" + j + "车 1号座已入座");
                    barrier.await();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            });

            service.submit(()->{
                try {
                    Thread.sleep(2000);
                    log.info("第" + j + "车 2号座已入座");
                    barrier.await();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            });

            service.submit(()->{
                try {
                    Thread.sleep(3000);
                    log.info("第" + j + "车 3号座已入座");
                    barrier.await();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            });
        }
        service.shutdown();
    }
}


http://www.niftyadmin.cn/n/5074301.html

相关文章

[计算机入门] Windows附件程序介绍(游戏类)

3.16 Windows附件程序介绍(游戏类) 3.16.1 扫雷&#xff1a;MineSweeper.exe 扫雷是一款经典的单人益智游戏&#xff0c;最初于1990年代由微软公司首次发布在Windows操作系统上。它成为了Windows自带游戏程序的一部分&#xff0c;并广受欢迎。 游戏的目标是通过逻辑和推理&am…

集线器、交换机、路由器是如何转发包的

集线器、交换机、路由器是如何转发包的 集线器交换机MAC地址表的维护 路由器路由表中的信息路由器的包接收操作查询路由表确定输出端口找不到匹配路由时选择默认路由包的有效期通过分片功能拆分大网络包路由器发送操作中的一些特点 参考文档 集线器 集线器是一层&#xff08;物…

tcpdump(五)命令行参数讲解(四)

一 案例讲解 tcpdump官方参考文档 最全的tcpdump手册 强调&#xff1a; -nn 选项一般是must 必选 ① 现场分析并保留现场信息 tcpdump -l | tee dat 使用tee来把tcpdump的输出同时放到文件dat和标准输出中场景&#xff1a; 自己现场分析同时把现场信息保留下来 ② …

web应用常见的其他漏洞总结

1.暴力破解用户名和密码 admin:admin, test:test, weblogic:weblogic, root:passwd 2. 扫敏感目录及备份文件 以ation 为扩展名的文件&#xff0c;通过7kb和k8&#xff0c;破壳扫描&#xff0c;扫描出来一个Web.rar文件&#xff0c;可获取MSSQL SSA连接用户名密码,通过测试…

用 TDengine 3.0 碰到“内存泄露”?定位问题原因很关键

作为C/C开发人员&#xff0c;内存泄漏是最容易遇到的问题之一&#xff0c;这是由C/C语言的特性引起的。众所周知&#xff0c;开源的时序数据库&#xff08;Time Series Database&#xff09;TDengine OSS 就是使用C语言进行底层自研的&#xff0c;也因此&#xff0c;针对内存泄…

如何批量获取1688商品详情数据接口,1688商品详情数据接口

批量获取1688商品详情数据接口的步骤如下&#xff1a; 获取API接口权限。编写API请求代码。应用爬取下来的数据。 1688商品详情数据接口步骤如下&#xff1a; 注册成为1688开放平台的开发者&#xff0c;并创建一个应用&#xff0c;获取到所需的App Key和App Secret等信息。使…

ARM day5

三盏灯流水 .text .global _start _start: 1.LDR R0,0X50000A28LDR R1,[R0]ORR R1,R1,#(0X1<<4)STR R1,[R0] 1.LDR R0,0X50000A28LDR R1,[R0]ORR R1,R1,#(0X1<<5)STR R1,[R0] 2.LDR R0,0X50006000LDR R1,[R0]BIC R1,R1,#(0X3<<20)ORR R1,R1,#(0X1<<…

[LMKD] [Android] 进程OomAdj调整分析:OomAdjuster分析(3)

一.简要说明 &#x1f34e; 1. OomAdjuster核心作用就是调整进程—服务端或客户端的oomAdj值和进程状态&#xff0c;分别处理了各种场景&#xff1a;灭屏&#xff0c;activity不可见&#xff0c;activity回到后台&#xff0c;正在播放动画&#xff0c;近期使用的Service&#x…