异步阻塞等概念

拿网上老张喝茶为例子:

同步阻塞:

老张把水壶放到火上,立等水开

同步非阻塞:

老张把水壶放到火上,去客厅看电视,时不时去厨房看看水开没有

异步阻塞:

老张买了把会响笛的那种水壶。水开之后,能大声发出嘀~~~~的噪音。老张把响水壶放到火上,立等水开

异步非阻塞:

老张把响水壶放到火上,去客厅看电视,水壶响之前不再去看它了,响了再去拿壶

总结:

异步同步反映的是执行者执行方式,同步表示执行者主动查询,异步表示自己不主动查询而是等待消息等机制通知。

阻塞非阻塞反映的是执行者执行状态,阻塞表示执行者等待,非阻塞表示执行者不等做其他事情。

由facebook开源的web框架tornado就是宣称依靠异步非阻塞解决C10K问题。其异步思想主要有:

1 回调callback

2 基于python yeild机制的异步,主要是在执行一段需要等待io结果的程序A时,利用yield挂起,让CPU去执行其他程序。当io返回完毕时触发send or next函数重回A,继续执行。

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值