并发等待执行的几种方法
一、说明 工作中常有这样的场景,并发执行一些任务,并等待所有的任务执行完成,进行后续处理,这里总结了几种方法用于满足这种业务场景。 二、闭锁方式 闭锁是Java早期提供的一种并发锁,其特点是每个任务颁发一个令牌,任务执行完成释放令牌,主进程可以一直阻塞等待所有的令牌被释放,当所有令牌都被释放后,主进程可以继续执行。依据闭锁的这种特效可以满足上面的任务场景。 public class CountDownLatchService { private final CountDownLatch lock; private final ExecutorService executorService; private List<Long> aList; public CountDownLatchServ