异步执行对于开发者来说并不陌生,在实际的开发过程中,很多场景多会使用到异步,相比同步执行,异步可以大大缩短请求链路耗时时间。比如:「发送短信、邮件、异步更新等」,这些都是典型的可以通过异步实现的场景。异步的8种实现方式 1、线程Thread
异步执行对于开发者来说并不陌生,在实际的开发过程中,很多场景多会使用到异步,相比同步执行,异步可以大大缩短请求链路耗时时间。
比如:「发送短信、邮件、异步更新等」
,这些都是典型的可以通过异步实现的场景。
1、线程Thread
2、Future
3、异步框架CompletableFuture
4、spring注解@Async
5、Spring ApplicationEvent事件
6、消息队列
7、第三方异步框架,比如Hutool的ThreadUtil
8、Guava异步
首先我们先看一个常见的用户下单的场景:
什么是异步?
在同步操作中,我们执行到 发送短信 的时候,我们必须等待这个方法彻底执行完才能执行 赠送积分 这个操作,如果 赠送积分 这个动作执行时间较长,发送短信需要等待,这就是典型的同步场景。
实际上,发送短信和赠送积分没有任何的依赖关系,通过异步,我们可以实现赠送积分和发送短信这两个操作能够同时进行,比如:
这就是所谓的异步,是不是非常简单,下面就说说异步的几种实现方式吧。
1、线程异步
public class AsyncThread extends Thread { @Override public void run() { System.out.println("Current thread name:" + Thread.currentThread().getName() + " Send email success!"); } public static void main(String[] args) { AsyncThread asyncThread = new AsyncThread(); asyncThread.start(); }}
--结束END--
本文标题: 异步编程的几种方式,你知道几种?
本文链接: https://www.lsjlt.com/news/370767.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-13
2024-05-13
2024-05-13
2024-05-13
2024-05-13
2024-05-13
2024-05-13
2024-05-13
2024-05-13
2024-05-13
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0