Springboot任务之异步任务的使用详解
程序员文章站
2022-06-27 14:45:47
一、springboot--异步任务1.1 什么是同步和异步 同步是阻塞模式,异步是非阻塞模式。 同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会...
一、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异步任务内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
上一篇: 曹魏末代皇帝曹奂为什么管生父叫爷爷?
推荐阅读
-
Android的线程通信:消息机制原理(Message,Handler,MessageQueue,Looper),异步任务AsyncTask,使用JSON
-
spring boot使用自定义配置的线程池执行Async异步任务
-
使用celery执行Django串行异步任务的方法步骤
-
spring boot使用自定义配置的线程池执行Async异步任务
-
异步任务队列Celery在Django中的使用方法
-
详解SpringBoot开发案例之整合定时任务(Scheduled)
-
Android AsyncTask实现异步处理任务的方法详解
-
Android的异步任务AsyncTask详解
-
Python环境下安装使用异步任务队列包Celery的基础教程
-
详解springboot中使用异步的常用两种方式及其比较