ExecutorService service = Executors.newCachedThreadPool();
CountDownLatch countDownLatch = new CountDownLatch(objectList.size());
for (Object object:objectList) {
service.execute(new Runnable() {
@SneakyThrows
@Override
public void run() {
logger.info("请求参数:" + JSON.toJSONString(object);
try {
//请求
request(object);
} finally {
countDownLatch.countDown();
}
}
});
}
try {
//等待线程结束
countDownLatch.await();
} catch (InterruptedException e) {
e.printStackTrace();
}
也可将请求结果封装进集合,然后在所有线程结束后输出