同步处理与异步处理

根据我的理解同步与异步是相对的,同步指的是一步一步来,而异步指的是先做一件事,这件事还没有完成的时候我们可以先做其他事,然后两件事同时进行,一旦这件事做完了,我们就可以返回这里处理它的数据。

举个例子,我们有可能要从服务器读取一些数据,于是我们发出了GET请求,但是这个数据的获取可能需要一些时间,那么呈现在用户面前的就是正在等待加载的情况了。

同样的情况,倘若我们能用异步处理,我们就可以在等待获取数据的过程中先加载一些其他的资源,这样就不会让用户产生卡死或者页面奔溃的错觉了。

不过异步处理有一定的缺点,比如说,我们通过异步处理T1对一个数据进行了修改,然后T2读取数据,然后T1发现数据不需要修改,又改了回来,然后T2又读取了一次,那么T2的数据又变回了开始的数据,造成了脏读,白白浪费了资源。而同步处理却恰恰相反,它却能避免这种情况,不过它的缺点上面已经讲过了。

原文地址:https://www.cnblogs.com/zhuangshq/p/5094604.html