public class CountDownLatchDemo {
final static CountDownLatch latch = new CountDownLatch(10);
private static class Task implements Runnable{
@Override
public void run() {
try {
TimeUnit.MILLISECONDS.sleep(new Random().nextInt(10)*1000);
System.out.println(String.format("检查完成, %s",new Date()));
latch.countDown();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
Task task = new Task();
ExecutorService executorService = Executors.newFixedThreadPool(10);
for (int i = 0; i<10; i++){
executorService.submit(task);
}
//等待检查
try {
System.out.println("等待检查");
latch.await();
//发射火箭
System.out.println("Ok, Fire !!");
executorService.shutdown();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
CountDownLatchDemo
最新推荐文章于 2024-05-16 02:38:06 发布