Java实现等待所有子线程结束后再执行一段代码的方法
发布时间 - 2026-01-11 02:59:34 点击率:次本文实例讲述了Java实现等待所有子线程结束后再执行一段代码的方法。分享给大家供大家参考,具体如下:

今天有一个需求是:在一个方法中开启了一个子线程来执行操作,返回值依赖于子线程的执行结果,这样如果要返回正确的值,就需要开启子线程后
主线程等待子线程,然后子线程执行结束后,主线程再继续执行。
主线程等待子线程需要用到:CountDownLatch
代码如下:
import java.util.concurrent.CountDownLatch;
public class Counter {
public static int count = 0;
static CountDownLatch cdl=new CountDownLatch(1000);//这里的数字,开启几个线程就写几
public synchronized static void inc() throws InterruptedException{//注意,如果不加上synchronized,由于并发写入,结果会小于1000
Thread.sleep(1);
count++;
cdl.countDown();
}
public static void main(String[] args) throws InterruptedException{
for(int i = 0; i < 1000; i++){
new Thread(new Runnable(){
public void run() {
// TODO Auto-generated method stub
try {
Counter.inc();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
).start();
}
cdl.await();//主线程等待子线程执行输出
System.out.println(count);
}
}
更多java相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《Java文件与目录操作技巧汇总》和《Java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
# Java
# 等待
# 子线程
# 结束
# 执行
# 代码
# Java结束线程的三种方法及该如何选择
# 正确结束Java线程的方法
# Java创建与结束线程代码示例
# java通过共享变量结束run停止线程的方法示例
# Java如何判断线程是否结束的三种方法
# 操作技巧
# 结束后
# 几个
# 相关内容
# 感兴趣
# 数据结构
# 给大家
# 所述
# 程序设计
# 有一个
# 就写
# 返回值
# 讲述了
# 依赖于
# 开启了
# util
# brush
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Python函数文档自动校验_规范解析【教程】
Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】
高端智能建站公司优选:品牌定制与SEO优化一站式服务
,南京靠谱的征婚网站?
清除minerd进程的简单方法
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
Laravel怎么在Controller之外的地方验证数据
企业网站制作这些问题要关注
如何在万网开始建站?分步指南解析
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
如何在VPS电脑上快速搭建网站?
如何制作一个表白网站视频,关于勇敢表白的小标题?
JavaScript实现Fly Bird小游戏
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】
详解Android图表 MPAndroidChart折线图
android nfc常用标签读取总结
Laravel如何部署到服务器_线上部署Laravel项目的完整流程与步骤
Laravel如何升级到最新版本?(升级指南和步骤)
JavaScript如何实现类型判断_typeof和instanceof有什么区别
常州企业网站制作公司,全国继续教育网怎么登录?
php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】
活动邀请函制作网站有哪些,活动邀请函文案?
如何在 React 中条件性地遍历数组并渲染元素
企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?
Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道
太平洋网站制作公司,网络用语太平洋是什么意思?
如何在IIS中新建站点并配置端口与物理路径?
如何用西部建站助手快速创建专业网站?
Laravel用户密码怎么加密_Laravel Hash门面使用教程
宙斯浏览器视频悬浮窗怎么开启 边看视频边操作其他应用教程
Laravel如何使用Eloquent ORM进行数据库操作?(CRUD示例)
北京企业网站设计制作公司,北京铁路集团官方网站?
Python结构化数据采集_字段抽取解析【教程】
用v-html解决Vue.js渲染中html标签不被解析的问题
Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】
IOS倒计时设置UIButton标题title的抖动问题
非常酷的网站设计制作软件,酷培ai教育官方网站?
lovemo网页版地址 lovemo官网手机登录
深圳防火门网站制作公司,深圳中天明防火门怎么编码?
米侠浏览器网页背景异常怎么办 米侠显示修复
东莞专业网站制作公司有哪些,东莞招聘网站哪个好?
怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?
如何在阿里云购买域名并搭建网站?
Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比
node.js报错:Cannot find module 'ejs'的解决办法
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程
如何实现javascript表单验证_正则表达式有哪些实用技巧
如何为不同团队 ID 动态生成多个非值班状态按钮
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?

