一:MyThread1 类
public class MyThread1 implements Runnable {
private CountDownLatch countDownLatch;
public MyThread1(CountDownLatch countDownLatch){
this.countDownLatch = countDownLatch;
}
@Override
public void run() {
Random random = new Random();
int randInt = random.nextInt();
System.out.println(randInt);
//递减锁存器的计数,如果计数到达零,则释放所有等待的线程
countDownLatch.countDown();
}
}
二:测试类
public class MyThread1Test {
public static void main(String[] args) throws InterruptedException {
CountDownLatch countDownLatch = new CountDownLatch(5);
//创建一个可重用固定线程数的线程池,以共享的无界队列方式来运行这些线程,在需要时使用提供的 ThreadFactory 创建新线程。
ExecutorService executorService = Executors.newFixedThreadPool(5);
for (int i = 0; i < 5; i++) {
//提交要执行的 Runnable 任务,