diff --git a/src/main/java/cn/van/business/util/JDUtils.java b/src/main/java/cn/van/business/util/JDUtils.java index 8458cfe..0d7067b 100644 --- a/src/main/java/cn/van/business/util/JDUtils.java +++ b/src/main/java/cn/van/business/util/JDUtils.java @@ -36,6 +36,8 @@ import java.util.Comparator; import java.util.Date; import java.util.List; import java.util.Map; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -71,6 +73,8 @@ public class JDUtils { private OrderRowRepository orderRowRepository; @Resource private WXUtil wxUtil; + // 创建一个固定大小的线程池 + private ExecutorService jdExecutorService = Executors.newFixedThreadPool(64); // 线程池大小根据需求调整 /** * 将 响应参数转化为 OrderRow,并返回 @@ -214,7 +218,9 @@ public class JDUtils { List orderRows = orderRowRepository.findByValidCodeNotInOrderByOrderTimeDesc(parm); for (OrderRow orderRow : orderRows) { - orderToWx(orderRow, true); + jdExecutorService.submit(() -> { + orderToWx(orderRow, true); + }); } logger.info("扫描订单发送到微信耗时:{} ms, 订单数:{} ", System.currentTimeMillis() - start, orderRows.size());