当前位置:网站首页>面试官:多个线程执行完毕后,才执行另一个线程,该怎么做?
面试官:多个线程执行完毕后,才执行另一个线程,该怎么做?
2022-08-04 15:59:00 【51CTO】

CountDownLatch
去掉try catch版本
先来演示一下用法,可以看到所有子线程都执行完毕才会执行主线程。实现这个功能主要靠的是CountDownLatch的2个方法await()和countDown()。
new一个CountDownLatch时会传一个计数器的值,上面的例子为3。调用await()方法时判断计数是否为0,如果不为0则呈等待状态。其他线程可以调用countDown()方法将计数减1,当计数减到位0时,则呈等待的线程继续执行。
CyclicBarrier
去掉try catch版本
CountDownLatch的计数器只能使用一次,而CyclicBarrier的计数器可以使用reset()方法重置。挺简单的就不再演示。因为这2个工具类都用到了AQS,而AQS的原理很长,因此在本文就不介绍AQS的实现了
CompletableFuture
去掉try catch版本
参考博客
https://www.jianshu.com/p/2808c93fef12
边栏推荐
- "Research Report on the Development of Global Unicorn Enterprises in the First Half of 2022" released - DEMO WORLD World Innovation Summit ended successfully
- Go 言 Go 语,一文看懂 Go 语言文件操作
- 【Idea设置运行参数无效】可能是...
- Difference between GET and POST requests
- 成功 解决 @keyup.enter=“search()“ 在el-input 组件中不生效的问题
- 大家有没有遇到过 cdc mysql to doris只能单task,看不到具体数据流。怎么回事?
- 爬虫小白笔记(昨天的对于注意解析数据的补充)
- 初学爬虫笔记(收集数据)
- 跟我学 UML 系统建模
- Real-Time Rendering 4th相关资源整理(无需积分 传火)
猜你喜欢

荐书 | 《大脑的奥秘:人人要懂的脑科学》:大脑里面有什么

一文详解什么是软件部署

多商户商城系统功能拆解24讲-平台端分销会员
![吴恩达机器学习[9]-神经网络学习](/img/07/0eeb3cd5f3ea7c2baeec1732ea8d9a.png)
吴恩达机器学习[9]-神经网络学习

GPS satellite synchronization clock, NTP network synchronization clock, Beidou clock server (Jingzhun)

成功 解决 @keyup.enter=“search()“ 在el-input 组件中不生效的问题

ITSM软件与工单系统的区别是什么?

Typora收费?搭建VS Code MarkDown写作环境

[TA-Frost Wolf_may-"Hundred Talents Project"] Art 2.7 Metallic and Speculer Process

DocuWare平台——用于文档管理的内容服务和工作流自动化的平台(上)
随机推荐
What is the difference between member variable and local variable
To ensure that the communication mechanism
皕杰报表配置文件report_config.xml里都配置了什么?
阿尔萨斯监控平台&普罗米修斯监控平台对服务器资源的监控
DevOps平台中的制品库是什么?有什么用处?
How to monitor code cyclomatic complexity by refactoring indicators
SAP ABAP SteamPunk 蒸汽朋克的最新进展 - 嵌入式蒸汽朋克
云存储硬核技术内幕——(10)
保证通信的机制有哪些
云存储硬核技术内幕——(11) 女子会所的秘密
dotnet core 添加 SublimeText 编译插件
【Es6中的promise】
AAAI‘22 推荐系统论文梳理
爬虫小白笔记(昨天的对于注意解析数据的补充)
【打卡】广告-信息流跨域ctr预估(待更新)
长期更新的一些 pytorch 知识点总结
弄懂#if #ifdef #if defined
数据分析入门导读
可视化大屏丑?这篇文章教你如何做美观大屏!
What are the useful IT asset management platforms?