同步与异步的区别

简介: 最近在学习ajax,而ajax(Asynchronous JavaScript and XML)是一种异步的JavaScript和XML技术。鉴于此,就先来了解下同步与异步的思想和区别。

最近在学习ajax,而ajax(Asynchronous JavaScript and XML)是一种异步的JavaScript和XML技术。鉴于此,就先来了解下同步与异步的思想和区别。

一:同步与异步

同步:同步是指一个进程在执行某个请求的时候,如果该请求需要一段时间才能返回信息,那么这个进程会一直等待下去,直到收到返回信息才继续执行下去。

异步:异步是指进程不需要一直等待下去,而是继续执行下面的操作,不管其他进程的状态,当有信息返回的时候会通知进程进行处理,这样就可以提高执行的效率了,即异步是我们发出的一个请求,该请求会在后台自动发出并获取数据,然后对数据进行处理,在此过程中,我们可以继续做其他操作,不管它怎么发出请求,不关心它怎么处理数据。

以上总结起来,通俗地讲,也就是说,同步需要按部就班地走完一整个流程,完成一整个动作,打个比方:同步的时候,你在写程序,然后你妈妈叫你马上拖地,你就必须停止写程序然后拖地,没法同时进行。而异步则不需要按部就班,可以在等待那个动作的时候同时做别的动作,打个比方:你在写程序,然后你妈妈让你马上拖地,而这时你就贿赂你弟弟帮你拖地,于是结果同样是拖好地,你可以继续敲你的代码而不用管地是怎么拖的哈哈。

二:同步与异步适用的场景

就算是ajax去局部请求数据,也不一定都是适合使用异步的,比如应用程序往下执行时以来从服务器请求的数据,那么必须等这个数据返回才行,这时必须使用同步。而发送邮件的时候,采用异步发送就可以了,因为不论花了多长时间,对方能收到就好。总结得来说,就是看需要的请求的数据是否是程序继续执行必须依赖的数据

相关文章
|
前端开发
异步转同步的几种方法
在循环等待中,我们可以使用一个变量来指示异步操作是否已完成。然后,我们可以在循环中检查该变量,如果它指示异步操作已完成,则退出循环。
552 0
|
6月前
|
负载均衡 算法 前端开发
同步和异步
同步和异步
85 0
|
6月前
|
前端开发
请简述同步和异步的区别是什么
请简述同步和异步的区别是什么
57 2
|
6月前
|
Python
同步和异步的区别
同步和异步的区别
|
6月前
|
Java 数据处理 调度
异步、半同步、同步
异步、半同步、同步
133 0
|
6月前
同步和异步的区别?
同步和异步的区别?
154 0
|
JavaScript 前端开发 UED
同步和异步区别
同步和异步区别
149 0
|
6月前
|
存储 JavaScript 前端开发
|
6月前
|
前端开发 JavaScript
同步和异步有什么区别
同步和异步有什么区别
209 0
同步和异步[多线程的异步执行操作]
同步和异步[多线程的异步执行操作]
52 0