package com.entel.research;
import java.util.concurrent.CyclicBarrier;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class JunitCyclicBarrier
{
public static void main(String[] args)
{
ExecutorService executorService = Executors.newFixedThreadPool(5);
final CyclicBarrier cyclicBarrier = new CyclicBarrier(5);
for(int i=0;i<5;i++)
{
Runnable runnable = new Runnable()
{
@Override
public void run()
{
try
{
System.out.println("This is the waiting");
cyclicBarrier.await();
System.out.println("The End!!!");
}
catch (Exception e)
{
e.printStackTrace();
}
}
};
executorService.execute(runnable);
}
executorService.shutdown();
}
}
运行结果: