小D课堂 - 零基础入门SpringBoot2.X到实战_第10节 SpringBoot整合定时任务和异步任务处理_4三、SpringBoot2.x异步任务实战(核心知识)

笔记

三、SpringBoot2.x异步任务实战(核心知识)
    简介:讲解什么是异步任务,和使用SpringBoot2.x开发异步任务实战
        一、什么是异步任务和使用场景:适用于处理log、发送邮件、短信……等
            下单接口->查库存 100
                    余额校验 150
                    风控用户100
                    ....


        二、启动类里面使用@EnableAsync注解开启功能,自动扫描
        
        三、定义异步任务类并使用@Component标记组件被容器扫描,异步方法加上@Async
            注意点:
                1)要把异步任务封装到类里面,不能直接写到Controller
                2)增长Future<String> 返回结果 AsyncResult<String>("task执行完成");  
                3)若是须要拿到结果 须要判断所有的 task.isDone()
        四、经过注入方式,注入到controller里面,若是测试先后区别则改成同步则把Async注释掉spring

开始

springboot整合异步任务

建立异步任务的类


建立三个任务

把方法标记为异步任务。使用@Async注解

能够标记在方法和类上面

在类上也标记为异步类






测试





springboot

Future

用future拿到结果。判断异步的执行是否完成。





异步

修改成同步

把这个类的注解不用了。就是个同步的类




 


测试

相关文章
相关标签/搜索