废话不说上干货:
package socket.check.thread;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class ThreadPoolExecute {
private static ExecutorService threadPool = Executors.newFixedThreadPool(5);
private static CountDownLatch counter = new CountDownLatch(1);
public static void main(String[] args) {
try {
System.out.println("逻辑A");
//此处写逻辑A
counter.countDown();
for (int i=0;i<5;i++){
threadPool.execute(new Runner(12));
}
} finally {
threadPool.shutdown();
}
}
static class Runner implements Runnable{
private int param;
public Runner(int param){
this.param = param;
}
@Override
public void run() {
try {
counter.await();
//跑你的线程池的逻辑
System.out.println("逻辑B"+param);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}