Listening to the Words

什么是同步、异步、 阻塞、非阻塞?

什么是同步、异步、 阻塞、非阻塞?

直接举例子:

同步、异步

同步异步指的的是做一件事前后的行为是否是同一个执行者;

举例子:

小明去烧开水,水烧开了取出来泡茶。

同步: 小明把这件事执行完成。
异步: 小明只去烧水,烧开后不管了由别人处理。对小明来说是异步。

阻塞、非阻塞

阻塞非阻塞是一件事情的处理方式。

举例子:
小明去烧开水,一直等着水烧开,那么烧水过程就是阻塞的。小明什么都没干。

小明去烧开水,然后去洗杯子,洗茶具不时看看水烧开了吗,烧开水的过程就是非阻塞的。

同步阻塞

小明烧开水,一直傻傻的等水开,然后洗茶杯、茶具,沏杯茶。

同步非阻塞

小明烧开水,然后去洗茶杯、茶具,不时看看水烧开了没,然后水开了沏茶。

异步阻塞

小明烧开水,然后去洗茶杯、茶具,水开了自动的切了茶。小明一直不时还在看开水是否烧好了,茶是否沏好了。

异步非阻塞

小明买了茶具,一打开开关,自动烧开水,洗茶杯,水烧开了自动沏茶,这个期间小明在玩手机。

程序就相当于小明,烧水的壶就相当于OS(kernel)

点赞