好运物流网-全国领先的物流网   好运物流网-登录  好运物流网-免费注册 进入我的后台 首页 | 发布信息 | 服务项目 | 物流百科
物流查询|物流公司|中国物流信息网-好运物流网
 
你正在查看的信息:资讯首页->资讯频道->IT编程技术->正文

java如何实现异步处理:SpringBoot下@EnableAsync与@Async异步任务的使用

更新时间:2022/4/23 11:49    出处:互联网
已经浏览
1130
1、@Async失效场景
一、异步方法使用static修饰
二、异步类没有使用@Component注解(或其他注解)导致spring无法扫描到异步类
三、异步方法不能与异步方法在同一个类中
四、类中需要使用@Autowired或@Resource等注解自动注入,不能自己手动new对象
五、如果使用SpringBoot框架必须在启动类中增加@EnableAsync注解
六、在Async 方法上标注@Transactional是没用的。 在Async 方法调用的方法上标注@Transactional 有效。
七、调用被@Async标记的方法的调用者不能和被调用的方法在同一类中不然不会起作用!!!!!!!
八、使用@Async时要求是不能有返回值的不然会报错的 因为异步要求是不关心结果的

2、代码案例
我们在使用多线程的时候,往往需要创建Thread类,或者实现Runnable接口,如果要使用到线程池,我们还需要来创建Executors。

在使用spring中,已经给我们做了很好的支持。只需要添加 @EnableAsync 就可以使用多线程。使用 @Async 就可以定义一个线程任务。通过spring给我们提供的ThreadPoolTaskExecutor就可以使用线程池。

默认情况下,Spring将搜索相关的线程池定义:要么在上下文中搜索唯一的TaskExecutor bean,要么搜索名为“taskExecutor”的Executor bean。如果两者都无法解析,则将使用SimpleAsyncTaskExecutor来处理异步方法调用。

3、异步方法各参数的详细说明
还可以看看其他文章,谢谢您的阅读。
网站申明:系本文编辑转载,来源于网络,目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,所有权归属原作者。如内容、图片有任何版权问题,请联系我们删除
上一篇:Java线程池七大参数详解和配置:corePoolSize、queueCapacity、maxPoolSize如何设置参数 下一篇:如何辨别伪装的百度爬虫?警惕!伪装的百度爬虫正在窃取你的网站信息
更多相关的物流文章
IT编程技术  互联网  2023-10-07  浏览:5100次
IT编程技术  互联网  2022-11-24  浏览:8316次
IT编程技术  互联网  2022-11-17  浏览:8355次
IT编程技术  互联网  2022-11-14  浏览:8159次
IT编程技术  互联网  2022-11-06  浏览:8509次
IT编程技术  互联网  2022-11-05  浏览:8039次
IT编程技术  互联网  2022-10-28  浏览:8702次
正在被浏览的文章
【IT编程技术】热点文章
“扫一扫”微信公众号
好运物流网公众号二维码
关于好运物流网 - 联系好运网 - 物流公司查询 - 物流知道 - 帮助中心 - 网站地图
温馨提示:防范支招 安全警示:货运合作要有安全意识,需当面核实对方真实身份,要签订合同/协议、提供身份证等(防范支招)
免责声明:本站只起到物流信息平台作用,内容的准确性以及物流过程中出现的任何风险均由发布者负责,与平台无关。
好运物流网(haoyun56.com)  备案号:浙ICP备10210792号-4

浙公网安备 33080202000006号