您现在的位置是:首页 > 文章详情

通过IO模型带来的思考

日期:2018-08-28点击:506

IO模型

对于IO,我们经常可以听到诸如同步阻塞IO,同步非阻塞IO,异步IO等等,那么什么是异步/同步,什么是阻塞/非阻塞?首先一次IO在UNIX系统中分为两个步骤

1.发起IO请求:用户线程向操作系统内核发起IO请求

2.执行IO操作:当内核准备好数据可以提交给发起IO请求的线程

阻塞/非阻塞的区别:发起IO请求之后会一直等待直到获取数据则是阻塞,否则是非阻塞

同步/异步的区别:获取到的数据是自己主动拿到的则是同步,是被动拿到的则是异步

下面我用取快递这个例子来介绍一下UNIX的五种IO模型

众所周知吸管喝饮料分为两个步骤:1.打开快递柜(发起IO请求),2.取走快递(执行IO操作)

同步&阻塞IO

打开快递柜(发起IO请求),如果快递柜里没有东西(内核没有准备好数据),则一直等在快递柜旁等快递来(阻塞直到内核准备好数据),快递柜有了快

原文链接:https://yq.aliyun.com/articles/630370
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章