什么时候@Async会失效?

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

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

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

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

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

相关推荐
从琳开始98914 分钟前
从Socket到TCP回显服务器:Java网络编程完整指南
java·服务器·网络·tcp/ip·java-ee
养军博客14 分钟前
Spring Security 4.x / 5.x / 6.x 配置全对比:前后端不分离与前后端分离
java·后端·spring·springsecurity
wifi___15 分钟前
SpringBoot自动装配原理
java·spring boot·后端
SL_staff1 小时前
制造订单交付闭环实践:用跨部门计划模板解决缺料-停机-返工三角死循环
java·开源·产品
device_Any1 小时前
接口文档写着三个字段,接口返回了五个
android·java·linux
Wang's Blog1 小时前
Java 项目实战: 交友项目 - 小视频模块实战:访客记录、FastDFS 存储与 SpringCache 缓存
java·缓存·交友
BuHuaX1 小时前
Lua 与 ToLua:运行机制及热更新原理
开发语言·unity·junit·c#·lua
xys_6781 小时前
深挖C++:C++入门基础
开发语言·c++
香蕉大香蕉(06敬畏市场)1 小时前
MySQL 单点详解(09)
java·数据库·mysql·面试·八股·大厂实习