随身笔记
随身笔记

简单粗俗解释同步和异步

同步在一定程度上可以看做是单线程,这个线程请求一个方法后就待这个方法给他回复,否则他不往下执行(死心眼)。

异步在一定程度上可以看做是多线程的(废话,一个线程怎么叫异步),请求一个方法后,就不管了,继续执行其他的方法。

比如一个文章系统里面,文章内容通常是字数非常多的,如果数据量大,打开会非常的慢,这个时候可以采取两种方法:

1、死心眼:一直等待要显示的数据全部取出来

标题、作者、来源、创建时间、关键字、点击次数、文章正文

ok,全部取出

显示

碰上心急的用户,他会骂死你的。

2、异步:首先显示能够快速取出的部分:

标题、作者、来源、创建时间、关键字、点击数

显示

然后另外的一个线程等待取出文章的正文显示!

异步就是:做一件事情的同事,不影响做其他的事情。

———————-以上解释来自网络————————–

下面来说说自己的理解:

同步:代码严格从上到下执行,只能等上一行代码执行完成了才能执行下一行代码。

异步:在众多代码中,其中有那么一段是用ajax异步代码写的来获取远程数据,如果获取时间过长就自动跳过ajax那段代码执行下一行代码,直到ajax异步代码获取数据成功后才重新回头执行那段异步的代码。

回调:回调函数一般是为异步代码提供的,就是因为异步有可能出现超时的情况不按照顺序执行,但又需要在执行某个特定异步代码完成之后马上执行另一个指定的函数,只时候就需要到回调函数了。

 

 

 

 

 

 

随身笔记

简单粗俗解释同步和异步
同步在一定程度上可以看做是单线程,这个线程请求一个方法后就待这个方法给他回复,否则他不往下执行(死心眼)。 异步在一定程度上可以看做是多线程的(废话,一个线程怎么叫异步),请求…
扫描二维码继续阅读
2015-02-04