首页 > 其他 > 详细

同步/异步--堵塞/非阻塞

时间:2019-09-07 11:36:06      阅读:93      评论:0      收藏:0      [点我收藏+]

首先,不要强迫,概念与程序对标


拿普通壶与响水壶举例:

普通壶在程序里就是一个被调用了,一直在执行但就是不返回的函数;

而在这个例子里,人还干别的事,相当于程序里可以继续向下执行;这种情况还称为同步非阻塞

概念里可以有,但在程序里,这是不成立的


程序中,调用一个函数后有两种情况:要么等待返回,要么继续向下执行

等待返回与概念中的同步/非堵塞对应

程序继续向下执行,还可以分为两种情况,被调函数是否还被cpu执行,

如果被cpu执行,那么就与异步对应

如果没有被cpu执行,就与非阻塞对应


所以,其实问题就出在,同步与非阻塞的概念在程序中重合了,即两个概念在程序中指的是一回事

所以把概念和程序分开讲;或者就对应起来,把两个概念对应到一种程序情况中


而同步/异步,堵塞/非阻塞的概念是什么呢?

同步/异步:被调用者是否返回消息,只与被调用者有关

堵塞/非阻塞:程序在等待调用结果时的状态,只与调用者有关

这样,水壶问题就能自圆其说了

同步/异步--堵塞/非阻塞

原文:https://www.cnblogs.com/justaman/p/11479008.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!