springboot 线程池公共类
时间: 2023-07-05 17:33:53 浏览: 114
通用线程池
4星 · 用户满意度95%
以下是一个简单的 Spring Boot 线程池公共类的示例代码:
```java
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.AsyncConfigurer;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import java.util.concurrent.Executor;
@Configuration
@EnableAsync
public class AsyncConfig implements AsyncConfigurer {
@Override
@Bean(name = "threadPoolTaskExecutor")
public Executor getAsyncExecutor() {
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
executor.setCorePoolSize(10);
executor.setMaxPoolSize(100);
executor.setQueueCapacity(10);
executor.setThreadNamePrefix("MyExecutor-");
executor.initialize();
return executor;
}
}
```
在这个示例代码中,我们使用了 Spring Boot 提供的 `ThreadPoolTaskExecutor` 类来创建一个线程池,并且实现了 `AsyncConfigurer` 接口,以便在应用程序中使用这个线程池。我们定义了线程池的核心大小、最大大小、队列容量和线程名前缀等属性,以便更好地控制线程池的行为。最后,我们将线程池实例化并返回给调用方,以便在需要异步执行任务的地方使用它。
阅读全文