同步编程和异步编程的区别

我在这里用几个例子(附带图文)给你们讲解一下,具体区别。

第一个例子

一、同步同步编程和异步编程的区别_第1张图片

执行步骤:

step1 ===》 step2 ===》step3

同步编程和异步编程的区别_第2张图片同步编程和异步编程的区别_第3张图片同步编程和异步编程的区别_第4张图片

 先打印 hello moon,

再打印图片,

等待图片打印完,再打印 hello Jupiter

一步一步执行,等待上一步执行完,再执行下一步。

二、异步同步编程和异步编程的区别_第5张图片

step1 ===》step2 / step3

同步编程和异步编程的区别_第6张图片同步编程和异步编程的区别_第7张图片同步编程和异步编程的区别_第8张图片

 先打印 hello moon,

再执行打印图片,在打印图片时候如果网络比较慢,会接着执行打印 hello Jupiter

第二个例子同步编程和异步编程的区别_第9张图片

给100名顾客发信息,问他们的护照号码是多少。 

一、同步

同步编程和异步编程的区别_第10张图片

给一个顾客发信息,等待他找号码然后找到之后再回复你,你再给另一位发信息,直到所有人的号码都知道了。(一个实格代表发信息,两个虚线格,代表等待过程)而在等待过程中,你完全无事干,只有等待。

二、异步同步编程和异步编程的区别_第11张图片

给一位顾客发完信息,在等待他回复的同时,再给另一位顾客发信息,不必等待他,直到知道所有人的号码。

区别同步编程和异步编程的区别_第12张图片

异步明显提高了工作效率,现在主流的就是异步请求,目的就是提高用户体验。

但有时候我们的任务三,需要任务二完成后,在它那里得到一些数据,这个时候就需要在任务二上加上 async 和 await

你可能感兴趣的:(同步,异步,前端,javascript)