什么时候@Async会失效?

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

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

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

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

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

相关推荐
+VX:Fegn089512 小时前
计算机毕业设计|基于springboot + vue在线教育学习系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·学习·课程设计
军军君0112 小时前
Three.js基础功能学习四:摄像机与阴影
开发语言·前端·javascript·3d·typescript·three·三维
Morwit12 小时前
如何使用CMake构建Qt新项目
开发语言·c++·qt
独自破碎E12 小时前
Leetcode1499满足不等式的最大值
java·开发语言
最贪吃的虎13 小时前
Java基础之泛型
java·运维·jvm·分布式·后端
zmzb010313 小时前
C++课后习题训练记录Day62
开发语言·c++
蕨蕨学AI13 小时前
【Wolfram语言】36 创建云端应用
开发语言·wolfram
不要em0啦14 小时前
从0开始学python:简单的练习题4
开发语言·python
我想吃余14 小时前
【C++篇】C++11:线程库
开发语言·c++