From 6c01241b96f66239aff192f22dce99e1275986ed Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期二, 15 二月 2022 11:07:50 +0800
Subject: [PATCH] fix 回滚代码生成部分优化 修复优化导致的问题
---
ruoyi-framework/src/main/java/com/ruoyi/framework/config/ThreadPoolConfig.java | 20 ++++----------------
1 files changed, 4 insertions(+), 16 deletions(-)
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ThreadPoolConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ThreadPoolConfig.java
index 7758e97..f6e07fe 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ThreadPoolConfig.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ThreadPoolConfig.java
@@ -1,6 +1,7 @@
package com.ruoyi.framework.config;
import com.ruoyi.common.utils.Threads;
+import com.ruoyi.common.utils.reflect.ReflectUtils;
import com.ruoyi.framework.config.properties.ThreadPoolProperties;
import org.apache.commons.lang3.concurrent.BasicThreadFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -33,21 +34,7 @@
executor.setCorePoolSize(threadPoolProperties.getCorePoolSize());
executor.setQueueCapacity(threadPoolProperties.getQueueCapacity());
executor.setKeepAliveSeconds(threadPoolProperties.getKeepAliveSeconds());
- RejectedExecutionHandler handler;
- switch (threadPoolProperties.getRejectedExecutionHandler()) {
- case "CallerRunsPolicy":
- handler = new ThreadPoolExecutor.CallerRunsPolicy();
- break;
- case "DiscardOldestPolicy":
- handler = new ThreadPoolExecutor.DiscardOldestPolicy();
- break;
- case "DiscardPolicy":
- handler = new ThreadPoolExecutor.DiscardPolicy();
- break;
- default:
- handler = new ThreadPoolExecutor.AbortPolicy();
- break;
- }
+ RejectedExecutionHandler handler = ReflectUtils.newInstance(threadPoolProperties.getRejectedExecutionHandler().getClazz());
executor.setRejectedExecutionHandler(handler);
return executor;
}
@@ -58,7 +45,8 @@
@Bean(name = "scheduledExecutorService")
protected ScheduledExecutorService scheduledExecutorService() {
return new ScheduledThreadPoolExecutor(threadPoolProperties.getCorePoolSize(),
- new BasicThreadFactory.Builder().namingPattern("schedule-pool-%d").daemon(true).build()) {
+ new BasicThreadFactory.Builder().namingPattern("schedule-pool-%d").daemon(true).build(),
+ new ThreadPoolExecutor.CallerRunsPolicy()) {
@Override
protected void afterExecute(Runnable r, Throwable t) {
super.afterExecute(r, t);
--
Gitblit v1.9.3