怎样理解阻塞非阻塞与同步异步的区别?

同步阻塞:你打电话告诉老板你要买某书,老板拿起电话听你说完就去查书,没有说话,你什么也不知道,在得到任何结果之前,你一直拿着电话干等,你此时什么也干不了。30分钟后老板直接把书送到你家,这时你才挂断电话。每次电话你都要得得到结果(书到家)后你才挂断电话,这是同步。你一直拿着电话等结果,这是阻塞。

同步非阻塞:你打电话告诉老板你要买某书,老板拿起电话后说“我不知道有没有货,现在去查”便挂了电话,又过了10分种你第二次打电话说你要买某书,老板拿起电话说完“还没有查到,你再等会儿”便挂断电话。挂断电话5分钟后老板查到有书,但并没有主动打电话告诉你。你再次等待10分钟后第三次电话老板问结果,老板说“书有了,我给你送到家”,你断挂电话。每次电话你都要得得到结果(去查->还没有查到->有货)后你才挂断电话,这是同步。你每隔10分钟打电话询问结果,这是非阻塞。

异步阻塞:你打电话过去问老板有没有某书,老板说“我不知道有没有货,现在去查,先挂了电话,有结果告诉你,你等我电话”就挂掉电话。等电话期间你什么也不干,老板主动给你发短信通知你结果书有了,5分钟后希望老板现在把书送来,你再次打电话让老板送书,老板马上送书上门。老板主动给你发短信,这是异步。等待老板的短信期间你什么也没干,这是阻塞。

异步非阻塞:你打电话过去后问老板有没有某书,老板说“好的,有货我直接给你送上门”就挂掉电话。然后你想干嘛干嘛,等老板门到后你看书。等待老板主动给你送书上门,这是异步。挂了电话后你就想干嘛干嘛,这是非阻塞。

无欲则刚 关心则乱
原文地址:https://www.cnblogs.com/xjyxp/p/11264147.html