什么时候@Async会失效?

有多种原因可造成@Async失效:

1.@Async依赖于Spring AOP,如果是内部调用的话则会绕过代理对象,直接调用原始方法。

2.Spring AOP默认只会对public方法生效,对于非public方法则不会被代理,所以此时@Async是失效的。

3.如果Spring Boot的主类或者配置类上没有添加@EnableAsync注解,也就是没有显示启用异步功能,则Spring是不会为其生成代理的。

4.@Async依赖于Spring容器管理的Bean,如果是手动new的对象,并没有被Spring管理,则代理机制也是会失效的。

相关推荐
小羊没烦恼!20 小时前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
俊昭喜喜里20 小时前
java中的继承和多态的区别
java
小羊没烦恼!20 小时前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
譕痕21 小时前
JSONObject与JSONArray封装数据格式区别
java·json
胡写代码21 小时前
别再前后端各写一套表单校验了
java·后端
小鱼能吃糖21 小时前
缺陷修复总览 · mall电商项目:5类缺陷,1个病根,4个业务域
java·电商
此时不提桶,更待何时21 小时前
01-06-A-JVM排查实战详解
java·jvm
伞伞悦读21 小时前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
vipxieliang1 天前
ValidX 在 DDD 领域驱动设计中的实践
java·spring boot
C语言小火车1 天前
C/C++ 为什么需要编译器?
开发语言·c++