如何在Spring中使用注解方式注入ThreadPoolTaskExecutor?
时间: 2023-11-21 09:54:44 浏览: 84
在Spring中使用注解方式注入ThreadPoolTaskExecutor,需要在配置类中添加以下代码:
```java
@Configuration
@EnableAsync
public class AppConfig implements AsyncConfigurer {
@Override
public Executor getAsyncExecutor() {
ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
executor.setCorePoolSize(5);
executor.setMaxPoolSize(10);
executor.setQueueCapacity(25);
executor.initialize();
return executor;
}
@Override
public AsyncUncaughtExceptionHandler getAsyncUncaughtExceptionHandler() {
return new SimpleAsyncUncaughtExceptionHandler();
}
}
```
其中,@EnableAsync注解用于开启异步执行,getAsyncExecutor()方法用于配置线程池,getAsyncUncaughtExceptionHandler()方法用于处理异步执行中的异常。
另外,需要在需要异步执行的方法上添加@Async注解,例如:
```java
@Service
public class MyService {
@Async
public void doSomething() {
// 异步执行的方法体
}
}
```
阅读全文