diff --git a/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/config/AsyncConfiguration.java b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/config/AsyncConfiguration.java new file mode 100644 index 000000000..721629097 --- /dev/null +++ b/pigx-common/pigx-common-core/src/main/java/com/pig4cloud/pigx/common/core/config/AsyncConfiguration.java @@ -0,0 +1,26 @@ +package com.pig4cloud.pigx.common.core.config; + +import lombok.RequiredArgsConstructor; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.AsyncConfigurer; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; + +import java.util.concurrent.Executor; + +/** + * 明确异步线程池配置,避免和 @EnableScheduling 造成的线程池冲突 + * + * @author lengleng + * @date 2024/4/20 + */ +@Configuration(proxyBeanMethods = false) +@RequiredArgsConstructor +public class AsyncConfiguration implements AsyncConfigurer { + + private final ThreadPoolTaskExecutor applicationTaskExecutor; + + @Override + public Executor getAsyncExecutor() { + return applicationTaskExecutor; + } +} diff --git a/pigx-common/pigx-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/pigx-common/pigx-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index fe9f20850..8dc1c7beb 100644 --- a/pigx-common/pigx-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/pigx-common/pigx-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -1,3 +1,4 @@ +com.pig4cloud.pigx.common.core.config.AsyncConfiguration com.pig4cloud.pigx.common.core.config.JacksonConfiguration com.pig4cloud.pigx.common.core.config.MessageSourceConfiguration com.pig4cloud.pigx.common.core.config.RestTemplateConfiguration