springboot-@Async

Posted kiko2014551511

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot-@Async相关的知识,希望对你有一定的参考价值。

 

@Async注解用的是Spring Boot自动生成的ThreadPoolTaskExecutor对象

具体一点说,就是它会去容器里找TaskExecutor类型的Bean,如果有多个,他会再去找名为“taskExecutor”,类型为Executor的Bean。

技术图片

 

 

看源码步骤:

AsyncConfigurer类—》AsyncConfigurerSupport—》AsyncExecutionAspectSupport中构造函数—》getDefaultExecutor()—》默认获取Executor,如果有多个,默认找名称为taskExecutor(ThreadPoolTaskExecutor) —》determineAsyncExecutor(没有qualifier指定则找默认的this.defaultExecutor.get())

 

 

参考地址:

Spring Boot教程(21) – 默认线程池 : https://zhuanlan.zhihu.com/p/85855282

 

以上是关于springboot-@Async的主要内容,如果未能解决你的问题,请参考以下文章

Java Springboot Async使用

SpringBoot @Async实现异步调用

Springboot 使用@Async开启异步调用

springboot+@async异步线程池的配置及应用

SpringBoot @Async 异步处理业务逻辑和发短信逻辑

springboot+async异步接口实现和调用