理解高并发(14).到齐后才能开干_cyclicBarrier

本文详细介绍了Java并发工具类CyclicBarrier的工作原理及应用场景,对比CountDownLatch,并通过示例代码展示了如何利用CyclicBarrier实现多线程间的同步。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概念
循环栅栏。工作线程必须等待其它线程都到达后才能够继续。 这就好比500米短跑比赛, 3跑道必须等到3人都到齐后才能开始赛跑。

与CountDownLatch区别
  • CountDownLatch 的使用场景更多的是侧重于主线程-从线程协调工作
而CyclicBarrier侧重的是多个从线程之间的协调工作
示例代码
5个线程都到齐后才会开始工作。
public class CyclicBarrierTest {
public static void main(String[] args) {
CyclicBarrier cb = new CyclicBarrier(5, new Runnable(){
public void run(){
System.out.println("---have---");
}
});
final Work work = new Work(cb);
for(int i=0; i<11; i++){
Thread t = new Thread(new Runnable(){
public void run(){
work.doStaff();
}
});
t.start();
}
}
static class Work{
private CyclicBarrier barrier;
public Work(CyclicBarrier c){
this.barrier = c;
}
public void doStaff(){
System.out.println(Thread.currentThread().getName() + " will waiting...");
try {
barrier.await();
} catch (Exception e) {}
System.out.println(Thread.currentThread().getName() + " do task done...");
}
}
}
Dism++,最强的Windows实用工具,PE必备工具Dism++是由初雨团队采用微软内部API编写的一款开源免费的实用工具,最开始的名字叫Windows更新清理工具,号称全球第一款基于CBS 的 Dism GUI 实现!Dism++可以说是一个Dism的GUI版,但是并不依赖Dism,直接基于更底层的CBS(Component Based Servicing Reference)。Dism++作为第三版清理工具更加深入系统底层,功能和清理效果都非常不错。它具有功能如:空间回收、更新清理、系统优化、CompactOS、Windows Update、完整ESD支持、ESD转ISO、WIM/ESD互转,Imagex、ISO生成器、引导修复、系统备份、系统还原、春哥附体、驱动管理等,兼容Windows Vista/7/8/8.1/10平台。 Dism++特性支持情况 1:WIM支持,比如创建WIM,挂载WIM,以及释放WIM(所有系统均支持) 2:WIM快速挂载以及完整的ESD支持,比如创建ESD,ESD转WIM,ESD释放等 3:WIMBoot支持,比如创建WIMBoot启动的WIM文件或者释放WIMBoot启动的系统 4:热备份系统,直接在系统运行时直接备份自身,无需进入PE。(所有系统均支持) 5:热还原系统,直接在系统运行时直接还原系统自身,无需进入PE。(所有系统均支持,但是需要RE环境完好) 6:完整的更新固化支持(即: /Cleanup-Image /StartComponentCleanup /ResetBase) (需要Windows 8.1或者更高) 7:系统修复支持(即:/Cleanup-Image /RestoreHealth)(需要Windows 8或者更高) 8:BCD引导修复(所有系统均支持,但是Win7有限支持,在BIOS启动只能修复BIOS方式,UEIF启动只能修复UEFI方式,更高版本没有此限制) 9:Compact支持(Windows 7或者更高) 新版变化 Dism++ 10.1.1000.70 19:06 2018/4/16 1:解决BUG 438,Windows 10 17639无法处理wim问题。 2:新增Fea211,系统还原后自动纠正系统盘盘符,避免跨硬盘还原导致黑屏问题。 3:行为调整,Dism++选项卡中显示的版本号调整为UBR版本号,避免用户潜在疑惑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值