TestCountDownLatch.java 615 B

12345678910111213141516171819
  1. import java.util.concurrent.*;
  2. public class TestCountDownLatch {
  3. public static void main(String[] args) throws Exception {
  4. int threads = 10;
  5. CountDownLatch cd = new CountDownLatch(threads);
  6. ExecutorService executor = Executors.newCachedThreadPool();
  7. for (int i = 0; i < 10; i++) {
  8. final int num = i + 1;
  9. executor.execute(() -> {
  10. System.out.println("Thread " + num + " start.");
  11. cd.countDown();
  12. });
  13. }
  14. cd.await();
  15. System.out.println("All finished.");
  16. executor.shutdown();
  17. }
  18. }