先来说说 阻塞 和 同步的 概念
非阻塞 和 异步 反之。
以下是自己的看法,表述的通俗一点就是:
阻塞:
国庆放假了,我被堵在高速上了,那我们常说这条路阻塞了,而不会说这条路同步了。对吧?阻塞了 我什么干不了了,总不能车不要了吧,那就只能现 在车里睡会,我们称为线程挂起。所以阻塞强调的是一种状态。
同步:
最常见的事,警察让先放人质,土匪说先给钱。那就这种现象就叫同步,那肯定不叫阻塞对吧。一个线程必须要等待某个资源才能继续进行。这种现象我们叫同步。所以强调的是现象。
下面 我们再来说说 是什么 阻塞,同步,非阻塞,异步IO
按照《Unix网络编程》的划分,IO模型可以分为:阻塞IO、非阻塞IO、IO复用、信号驱动IO和异步IO,按照POSIX标准来划分只分为两类:同步IO和异步IO。如何区分呢?首先一个IO操作其实分成了两个步骤:发起IO请求和实际的IO操作,同步IO和异步IO的区别就在于第二个步骤是否阻塞,如果