疯狂的狮子Li
2024-01-12 eca2be1a2e5b73c7946509849e3f526348793786
ruoyi-common/ruoyi-common-core/src/main/java/org/dromara/common/core/config/AsyncConfig.java
@@ -2,36 +2,32 @@
import cn.hutool.core.util.ArrayUtil;
import org.dromara.common.core.exception.ServiceException;
import org.dromara.common.core.utils.SpringUtils;
import org.springframework.aop.interceptor.AsyncUncaughtExceptionHandler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.scheduling.annotation.AsyncConfigurer;
import org.springframework.scheduling.annotation.EnableAsync;
import java.util.Arrays;
import java.util.concurrent.Executor;
import java.util.concurrent.ScheduledExecutorService;
/**
 * 异步配置
 * <p>
 * 如果未使用虚拟线程则生效
 *
 * @author Lion Li
 */
@EnableAsync(proxyTargetClass = true)
@ConditionalOnProperty(prefix = "spring.threads.virtual", name = "enabled", havingValue = "false")
@AutoConfiguration
public class AsyncConfig implements AsyncConfigurer {
    @Autowired
    @Qualifier("scheduledExecutorService")
    private ScheduledExecutorService scheduledExecutorService;
    /**
     * 自定义 @Async 注解使用系统线程池
     */
    @Override
    public Executor getAsyncExecutor() {
        return scheduledExecutorService;
        return SpringUtils.getBean("scheduledExecutorService");
    }
    /**