CountDownLatch地层实现也是基于AQS。
/*设定初始值为2*/
CountDownLatch ctd = new CountDownLatch(2);
new Thread(()->{
try{
System.out.println("t1开始执行..");
/*
*阻塞t1线程
*/
ctd.await();
System.out.println("t1结束指向..");
}catch(InterruptedException e){
e.printStackTrace();
}
},"t1").start();
/*
*当进行2次自减,初始值变为0后,才会唤醒t1线程
*/
ctd.countDown();
ctd.countDown();
本文介绍了Java并发工具类CountDownLatch的使用,它基于AQS(AbstractQueuedSynchronizer)实现。通过实例展示了如何设置初始计数并在线程间同步,确保所有任务完成后再继续执行后续操作。
778

被折叠的 条评论
为什么被折叠?



