| 
5 | 5 | import java.util.concurrent.Executors;  | 
6 | 6 | 
 
  | 
7 | 7 | /**  | 
8 |  | - * CountDownLatch Java class to synchronize your threads’ activities.  | 
9 |  | - *  | 
 | 8 | + * {@link java.util.concurrent.CountDownLatch} Java class to synchronize your threads’ activities.  | 
 | 9 | + * <br><br>  | 
10 | 10 |  * Source:  | 
11 |  | - * (http://stackoverflow.com/questions/17827022/what-is-countdown-latch-in-java-multithreading)  | 
 | 11 | + * <em>http://stackoverflow.com/questions/17827022/what-is-countdown-latch-in-java-multithreading</em><br>  | 
 | 12 | + *  | 
12 | 13 |  * Any thread, usually main thread of application, which calls  | 
13 |  | - * CountDownLatch.await() will wait until count reaches zero or its interrupted  | 
 | 14 | + * {@link java.util.concurrent.CountDownLatch#await()} will wait until count reaches zero or its interrupted  | 
14 | 15 |  * by another thread. All other thread are required to do count down by calling  | 
15 |  | - * CountDownLatch.countDown() once they are completed or ready.  | 
16 |  | - *  | 
 | 16 | + * {@link java.util.concurrent.CountDownLatch#countDown()} once they are completed or ready.  | 
 | 17 | + * <br>  | 
17 | 18 |  * As soon as count reaches zero, Thread awaiting starts running. One of the  | 
18 |  | - * disadvantage of CountDownLatch is that its not reusable once count reaches to  | 
19 |  | - * zero you can not use CountDownLatch any more.  | 
20 |  | - *  | 
21 |  | - * Use CountDownLatch when one thread like main thread, require to wait for one  | 
22 |  | - * or more thread to complete, before it can start processing.  | 
23 |  | - *  | 
24 |  | - * Classical example of using CountDownLatch in Java is any server side core  | 
25 |  | - * Java application which uses services architecture, where multiple services  | 
 | 19 | + * disadvantage of {@link java.util.concurrent.CountDownLatch} is that it's  | 
 | 20 | + * not reusable once the count reaches to  | 
 | 21 | + * zero you can not use {@link java.util.concurrent.CountDownLatch} any more.  | 
 | 22 | + * <br><br>  | 
 | 23 | + * Use {@link java.util.concurrent.CountDownLatch} when one thread, like main  | 
 | 24 | + * thread, require to wait for one or more threads to complete, before it can  | 
 | 25 | + * start processing.  | 
 | 26 | + * <br><br>  | 
 | 27 | + * Classical example of using {@link java.util.concurrent.CountDownLatch} in  | 
 | 28 | + * Java is any server side core  Java application which uses services  | 
 | 29 | + * architecture, where multiple services  | 
26 | 30 |  * are provided by multiple threads and application can not start processing  | 
27 | 31 |  * until all services have started successfully.  | 
28 |  | - *  | 
29 |  | - * Codes with minor comments are from http://www.caveofprogramming.com/youtube/  | 
 | 32 | + * <br><br>  | 
 | 33 | + * Codes with minor comments are from <em>http://www.caveofprogramming.com/youtube/</em><br>  | 
30 | 34 |  * also freely available at  | 
31 |  | - * https://www.udemy.com/java-multithreading/?couponCode=FREE  | 
 | 35 | + * <em>https://www.udemy.com/java-multithreading/?couponCode=FREE</em>  | 
32 | 36 |  *  | 
33 | 37 |  * @author Z.B. Celik <[email protected]>  | 
34 | 38 |  */  | 
 | 
0 commit comments