| package com.example.test.async; |
| |
| import java.util.concurrent.CountDownLatch; |
| |
| public class CountDownLatchTest { |
| private static final int COUNT = 5; |
| private static final CountDownLatch COUNT_DOWN_LATCH = new CountDownLatch(COUNT); |
| |
| public static void main(String[] args) { |
| long start = System.currentTimeMillis(); |
| for (int i = 0; i < COUNT; i ++){ |
| int finalI = i; |
| new Thread(()->{ |
| try { |
| System.out.println("线程-" + finalI + "-开始执行"); |
| Thread.sleep(1000); |
| System.out.println("线程-" + finalI + "-执行完毕"); |
| } catch (InterruptedException e) { |
| throw new RuntimeException(e); |
| }finally { |
| COUNT_DOWN_LATCH.countDown(); |
| } |
| }).start(); |
| } |
| try { |
| |
| COUNT_DOWN_LATCH.await(); |
| } catch (InterruptedException e) { |
| e.printStackTrace(); |
| } |
| System.out.println("所有线程已经执行完毕,总耗时(ms):" + (System.currentTimeMillis() - start)); |
| } |
| } |
结果

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律