Springboot任务之异步任务的使用详解
更新时间:2021年06月07日 16:31:12 作者:Z && Y
今天学习了一个新技能SpringBoot实现异步任务,所以特地整理了本篇文章,文中有非常详细的介绍及代码示例,需要的朋友可以参考下
一、SpringBoot--异步任务
1.1 什么是同步和异步
- 同步是阻塞模式,异步是非阻塞模式。
- 同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会—直等待下去,知道收到返回信息才继续执行下去
- 异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回式系统会通知进程进行处理,这样可以提高执行的效率。
1.2 Java模拟一个异步请求(线程休眠)
AsyncService.java
package com.tian.asyncdemo.service; import org.springframework.stereotype.Service; @Service public class AsyncService { public void hello() { try { System.out.println("数据正在处理"); Thread.sleep(3000); System.out.println("数据处理完成"); } catch (InterruptedException e) { e.printStackTrace(); } } }
AsyncController.java
package com.tian.asyncdemo.controller; import com.tian.asyncdemo.service.AsyncService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * ClassName: AsyncController * Description: * * @author Administrator * @date 2021/6/6 19:48 */ @RestController public class AsyncController { @Autowired AsyncService asyncService; @RequestMapping("/hello") public String hello() { asyncService.hello(); return "OK"; } }
运行结果:
1.3 使用异步
在Service的方法中使用@Async说这是一个异步方法,并在主入口上使用@EnableAsync开启异步支持
AsyncService.java
@Service public class AsyncService { @Async public void hello() { try { System.out.println("数据正在处理"); Thread.sleep(3000); System.out.println("数据处理完成"); } catch (InterruptedException e) { e.printStackTrace(); } } }
主入口上使用@EnableAsync开启异步支持
再次测试:
到此这篇关于Springboot任务之异步任务的使用详解的文章就介绍到这了,更多相关SpringBoot异步任务内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Springboot配置security basic path无效解决方案
这篇文章主要介绍了Springboot配置security basic path无效解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2020-09-09ArrayList和JSONArray边遍历边删除到底该如何做
这篇文章主要介绍了ArrayList和JSONArray边遍历边删除到底该如何做,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-12-12金三银四复工高频面试题java算法LeetCode396旋转函数
这篇文章主要为大家介绍了金三银四复工高频面试题之java算法题解LeetCode396旋转函数,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-02-02浅谈Java读写注册表的方式Preferences与jRegistry
这篇文章主要介绍了浅谈Java读写注册表的方式Preferences与jRegistry,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下2018-02-02
最新评论