了解同步执行和异步执行

51 篇文章 3 订阅

这是我看书时,觉得很好的一段话,在此做下笔记,并适当修改精简。

-----------------------------------------------------------------------------------------------------------------

同步执行意味着代码必须顺序执行(即运行完一行再运行下一行),

假设有下面3行代码:

CallAdd(1,2);

CallSub(3,4);

CallMul(5,6);

同步执行就是CallAdd(1,2)执行完后,才能执行CallSub(3,4),同理CallSub(3,4)执行完后,CallMul(5,6)才能执行。

假设CallAdd(1,2)执行的时间很长,如要几个小时才能执行完CallAdd(1,2),那么后面的代码CallSub(3,4)和

CallMul(5,6)则必须等待,直到CallAdd(1,2)执行完后,CallSub(3,4)才能执行,同理CallSub(3,4)执行完后,CallMul(5,6)才能执行。

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

异步执行则不同,仍然假设CallAdd(1,2)需要执行几个小时的时间,异步执行的话,在CallAdd(1,2)还没有执行完时,CallSub(3,4)

就可以开始执行了,同理,在CallSub(3,4)还没执行完时,CallMul(5,6)也可以被执行了。

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

在异步执行中,有一个非常特殊的功能,那就是回调(CallBack),CallAdd(1,2)函数可以指定在执行完后要调用的另一个函数,

当过了几个小时,函数执行完了(或者中间出错了),它会发出一个回调命令,这个命令会调用指定的另一个函数,从而可以

通知程序,我执行完了。如果可以,还能传递一些参数,这些参数可能就是函数运行几个小时的结果。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

您的十分满意是我追求的宗旨。

您的一点建议是我后续的动力。








  • 5
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

friendan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值