SpringBoot 整合线程池
分为三步
启动类加 @EnableAsync 注解
在方法上加 @Async 注解
创建线程池配置类
1.启动类加 @EnableAsync 注解
复制代码
2.在方法上加 @Async 注解
复制代码
注意:导致 @Async 注解失效的几个原因
两个方法都在同一个类里面,一个方法调用另一个异步方法,不生效。但是如果在本类中注入自己的实例,再通过自己的实例调用异步方法就可行。
@Async 方法所在的类没有交给 spring 代理(没加诸如 @Component 注解),不生效。
注解的方法不是是 public 方法,不生效。
3.创建线程池配置类
默认的线程池配置如下
复制代码
创建线程池配置类
复制代码
配置多个线程池
有时候,一个项目中如果配置了多个线程池,那需要在 @Bean 后面加上线程池的名称
复制代码
在使用 @Async 注解时就需要指明具体使用的线程池,如下格式
复制代码
文章转载自:救苦救难韩天尊
评论