线程:CountDownLatch同步工具
生活随笔
收集整理的這篇文章主要介紹了
线程:CountDownLatch同步工具
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一個同步輔助類,在完成一組正在其他線程中執(zhí)行的操作之前,它允許一個或多個線程一直等待。
類似計數(shù)器,當計數(shù)器的值為0時,繼續(xù)往下執(zhí)行。
1 package ch03; 2 3 import java.util.Random; 4 import java.util.concurrent.CountDownLatch; 5 import java.util.concurrent.ExecutorService; 6 import java.util.concurrent.Executors; 7 8 public class CountDownLatchTest { 9 10 public static void main(String[] args) { 11 ExecutorService threadPool = Executors.newCachedThreadPool(); 12 //初始值設(shè)置為2 13 final CountDownLatch latch = new CountDownLatch(2); 14 for(int i=0; i<2; i++){ 15 Runnable runnable = new Runnable() { 16 17 @Override 18 public void run() { 19 try { 20 Thread.sleep(new Random().nextInt(6000)); 21 System.out.println("子線程執(zhí)行。。。"); 22 //計數(shù)器自減 23 latch.countDown(); 24 } catch (Exception e) { 25 e.printStackTrace(); 26 } 27 } 28 }; 29 threadPool.execute(runnable); 30 } 31 32 try { 33 //等待計數(shù)器自減到0,然后再往下執(zhí)行。 34 latch.await(); 35 } catch (InterruptedException e) { 36 e.printStackTrace(); 37 } 38 System.out.println("主線程...."); 39 } 40 41 }?
轉(zhuǎn)載于:https://www.cnblogs.com/myCodingSky/p/3703918.html
總結(jié)
以上是生活随笔為你收集整理的线程:CountDownLatch同步工具的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: new Date('2014/04/30
- 下一篇: ASP.NET使用AJAX应注意IIS有