package com.fh.interview;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.Executor;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
/**
* @author
* @create 2018-06-03 下午3:35
**/
public class CountDownLauchDemo {
private static CountDownLatch startSign = new CountDownLatch(1);
private static CountDownLatch endSign = new CountDownLatch(6);
public static void main(String[] args) throws Exception {
ExecutorService pool = Executors.newFixedThreadPool(6);
for (int i=0;i<6;i++){
pool.execute(new Runnable() {
@Override
public void run() {
try {
System.out.println(Thread.currentThread().getName()+"等待裁判吹哨");
startSign.await();
System.out.println(Thread.currentThread().getName()+"全力冲刺");
endSign.countDown();
System.out.println(Thread.currentThread().getName()+"到达终点");
}catch (Exception e){
e.printStackTrace();
}
}
});
}
System.out.println("吹啦");
startSign.countDown();
endSign.await();
System.out.println("结束额");
pool.shutdown();
}
}