话说某日,我与LP逛完商场往回走,刚出商场门,突然发现帽子落商场某商号了,我对LP说,你在这等我,我跑上去拿(不忍LP跟我东奔西跑),一分钟后,帽子到手人归位,LP原地等我,和LP一起回家,这就是同步调用机制;
如果走到半路才发现帽子落商场了,这时旁边有另一商场,可以跟LP说,你先在这个商场逛逛,我回去取帽子,一会回来打电话联系,20分钟后,人归位,LP不在,打电话,LP从商场出来,一块回家,这就是异步调用机制,中间有个回调过程(打电话),中间还有一些默认的超时机制(试想,如果1个小时还不见我回来,肯定得打电话问问情况了,若电话不通估计该报警了,这都是超时处理机制了)。
同步调用,就是在调用一个方法后,调用者阻塞直到调用方法返回,此时被调用方法已经执行完成,可以立即得到结果;
异步调用,就是在调用一个方法后,不需要等待被调用方法返回,调用方法即执行完毕,此时被调用方法可能还没有执行完,但是没有关系,我们可以指定一个回调函数,在被调用方法完成的时候通知(打电话)原调用对象进行处理。
异步调用的最好的例子就是ajax
阅读(1168) | 评论(0) | 转发(0) |