前言
这个几个名词,一开始接触的时候,很容易弄混。所以,总结一下。方便大家,方便自己。不正之处,请大家多多评论,共同探讨。
正文
同步/异步:关注的是消息通信机制
阻塞/非阻塞:关注的是等待消息的状态
举例
就拿我们经常看到的例子吧,小明去烧水这个事情。
1.同步阻塞
小明将水壶放在炉子上开始烧了,然后就在炉子旁边等着,等烧开了,再忙其他的事情,不烧开,绝对不做其他的事情。
2.同步非阻塞
小明将水壶放在炉子上开始烧了,然后去忙其他事情,烧开之后的事情,还是由他去处理。
3.异步阻塞
小明将水壶放在炉子上开始烧了,然后去找人帮忙处理烧开之后要做的事情,但是他,还是站在炉子旁边等着。(感觉小明是不是有点傻乎乎的,所以正常的情况下,异步阻塞很少发生。)
4.异步非阻塞
小明将水壶放在炉子上开始烧了,然后去找人帮忙处理烧开之后要做的事情,他去忙其他的事情。
总结: