SpringBoot中使用@Async注解使用及其失效问题解决
转载:
项目开发过程中,经常会使用到异步处理。对于异步处理,我们最先想到的基本是直接在写类,然后继承Thread类或者实现Runnable接口,然后调用start()方法,这样也就达到了异步效果。
在SpringBoot或者Spring中若我们仅仅想使用异步功能,处理一些耗时久,且不是核心的逻辑,使用Spring的@Async注解即可,简单明了。
@Async注解虽然极其简单,但是里面的坑确是非常的多,这里简单的说一下其使用方法和着重补充一下注意事项。
使用方法
1. 若要使用异步,直接在public方法上加@Async注解。
2. 该方法所在的类一般属于实现类,即类上面有注解@Service或者@Component等。
注意事项(注解不起作用解决办法)
1. 启动类上要加上@EnableAsync 注解 ,代表开启异步。
2. 使用@Async注解的方法必须是public方法,使用private关键字,一定会失败。
3. 记带有@Async注解的方法为A类,那么调用该异步方法的方法一定需要在B类。作为开发者,最好将异步方法单独放在一个类当中,既不会出错,还便于管理。
转载: https://blog.csdn.net/qq_30146831/article/details/105939754?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-0-105939754-blog-114366343.pc_relevant_default&spm=1001.2101.3001.4242.1&utm_relevant_index=3
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
2020-05-11 RHEL 7 & CentOS 7禁用IPV6
2020-05-11 octotree-chrome插件,Github代码阅读神器
2020-05-11 idea运行测试时提示错误Failed to resolve org.junit.platform:junit-platform-launcher:1.5.2
2020-05-11 SpringBoot Process finished with exit code 0
2018-05-11 windows下如何正确使用Jconsole远程连接linux主机上的JVM
2017-05-11 根据两个百度地图坐标计算两点的距离
2016-05-11 Spring mvc json null