一个交易清算处理,里面有n(10)个
线程,现在需要实现以下功能,
n(10)个线程中,n-4(6)个线程全部同时执行完成后,再执行剩下的4个线程。
采用CountDownLatch
CountDownLatch latch=new CountDownLatch(n-4);
声明之后,将latch塞给n-4个线程,然后让每个线程run方法的最后,都执行latch.countDown(),当n-4个线程都执行完时,latch的计数器也被减为0了,此时即一起完成了。然后再将latch赋值为new CountDownLatch(4),将剩余的线程启动即可。