cyclicbarrier线程池如何让主线程知道所有子线程已经执行完成

cyclicbarrier  时间:2021-07-16  阅读:()

线程池如何让主线程知道所有子线程已经执行完成

------解决方案-------------------------------------------------------- 主线程做个while true循环判断所有的子线程!isAlive() ------解决方案-------------------------------------------------------- 不知道你的线程池的实现是自写还是使用JDK提供的java.util.concurrent.ThreadPoolExecutor。

如果是JDK提供的线程池。

可以去判断getPoolSize()是否等于或者小于池的核心线程数量corePoolSize。

当然这种情况下也存在陷阱,一就是核心线程数量无法确定是否在空闲状态,只有将corePoolSize设置为0,才能正确判断。

二就是线程池对空闲线程的销毁存在一个keepAliveTime,只有要将keepAliveTime减小到你getPoolSize的频率时,可能才能正确判断。

并且如果使用ThreadPoolExecutor,对于池中的线程,你无法针对某一个线程进行操作。

我的感觉,你现在的需求不符合使用线程池的需求,你需要的是一个线程管理类而不是池。

------解决方案-------------------------------------------------------- java.util.concurrent.CyclicBarrier 一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 mon barrier point)。

在涉及一组固定大小的线程的程序中,这些线程必须不时地互相等待,此时 CyclicBarrier 很有用。

因为该 barrier 在释放等待线程后可以重用。

牢记一点:当要解决任何线程问题时,优先考虑api提供的工具。

------解决方案--------------------------------------------------------顶四楼。

不清楚主线程是不是可以挂起,如果可以,可以在子线程可行的位置将主线程挂起,当子线程逻辑结束后,再将主线程唤醒。

仅做猜测,不可定论。

这好办啊

atcloud:480G超高防御VPS低至$4/月,美国/新加坡等6机房,512m内存/1核/500g硬盘/不限流量

atcloud主要提供常规cloud(VPS)和storage(大硬盘存储)系列VPS,其数据中心分布在美国(俄勒冈、弗吉尼亚)、加拿大、英国、法国、德国、新加坡,所有VPS默认提供480Gbps的超高DDoS防御+不限流量,杜绝DDoS攻击骚扰,比较适合海外建站等相关业务。ATCLOUD.NET是一家成立于2020年的海外主机商,主要提供KVM架构的VPS产品、LXC容器化产品、权威DNS智能解...

PacificRack:洛杉矶KVM月付1.5美元起,1G内存套餐年付12美元起

PacificRack在本月发布了几款特价产品,其中最低款支持月付仅1.5美元,基于KVM架构,洛杉矶机房,PR-M系列。PacificRack简称PR,QN机房旗下站点,主要提供低价VPS主机产品,基于KVM架构,数据中心为自营洛杉矶机房,现在只有PR-M一个系列,分为了2个类别:常规(Elastic Compute Service)和多IP产品(Multi IP Server)。下面列出几款秒...

v5server:香港+美国机房,优质CN2网络云服务器,7折优惠,低至35元/月

v5net当前对香港和美国机房的走优质BGP+CN2网络的云服务器进行7折终身优惠促销,每个客户进线使用优惠码一次,额外有不限使用次数的终身9折优惠一枚!V5.NET Server提供的都是高端网络线路的机器,特别优化接驳全世界骨干网络,适合远程办公、跨境贸易、网站建设等用途。 官方网站:https://v5.net/cloud.html 7折优惠码:new,仅限新客户,每人仅限使用一次 9...

cyclicbarrier为你推荐
元数据管理请问metadata是什么意思?联想网盘联想网盘登陆foxmail邮箱注册FOXMAIL邮箱在哪里可以注册?bindservice安卓里 remote service到底有什么用调度系统操作系统中为什么需要调度?inode智能客户端inode智能客户端怎么使用wifi?有b吗34B的胸围有多大?民生电商民生电商与传统的电商有什么区别?smartupload为什么使用smartupload执行上传保存操作时用这句smart.save("upload")失败用smart.save("/upload")成功欢迎页面欢迎屏幕!!!!
apache虚拟主机 重庆虚拟主机 域名停靠 winscp 联通c套餐 oneasiahost 128m内存 好看的留言 windows2003iso qq数据库 免费个人网站申请 嘉洲服务器 创梦 免费活动 smtp虚拟服务器 免费asp空间 成都主机托管 宿迁服务器 ssl加速 网站防护 更多