概念更正

https://www.zhihu.com/question/19732473

错误的四个象限分类

https://www.ibm.com/developerworks/cn/linux/l-async/index.html

正统的五种unix-io模型

https://blog.csdn.net/historyasamirror/article/details/5778378

一个恰当的比喻(没有第四种)

最后,再举几个不是很恰当的例子来说明这四个IO Model:
有A,B,C,D四个人在钓鱼:
blocking IO: A用的是最老式的鱼竿,所以呢,得一直守着,等到鱼上钩了再拉杆;
nonblocking IO: B的鱼竿有个功能,能够显示是否有鱼上钩,所以呢,B就和旁边的MM聊天,隔会再看看有没有鱼上钩,有的话就迅速拉杆;
IO multiplexing: C用的鱼竿和B差不多,但他想了一个好办法,就是同时放好几根鱼竿,然后守在旁边,一旦有显示说鱼上钩了,它就将对应的鱼竿拉起来;
asynchronous IO: D是个有钱人,干脆雇了一个人帮他钓鱼,一旦那个人把鱼钓上来了,就给D发个短信。

版权声明:本文为CSDN博主「historyasamirror」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/historyasamirror/article/details/5778378

最新文章

  1. form表单编码方式设置为multipart/form-data,后台参数出现乱码情况
  2. 重启eclipse color theme失效的解决办法
  3. 【转】基于LDA的Topic Model变形
  4. inline-block元素的空白间距
  5. ServletContext2
  6. C# IO流的操作
  7. iozone文件系统测试 与EXCEL 制图
  8. Win7无法访问NAS或Samba服务器解决之道 转
  9. html基础知识总结2
  10. JS非空验证及邮箱验证
  11. linux进程资源占用高原因分析命令记录
  12. SpringMVC上传图片并压缩及剪切demo
  13. 基于ARM-contexA9蜂鸣器驱动开发
  14. Ajax 模糊查询的简单实现
  15. DatetimeHelper,时间帮助类
  16. pygame 笔记-8 背景音乐&子弹音效
  17. Mybatis九( mybatis插件的原理及使用)
  18. Apache,PHP,MySQL独立安装
  19. 缓存数据库-redis数据类型和操作(set)
  20. Flutter Map<String, dynamic> 、List<String> a-z 排序

热门文章

  1. Linux命令及安装
  2. HTML认识二
  3. centos 上安装redis 3.0.5
  4. 【题解】Unit Fraction Partition-C++
  5. C# ExcelAddIn 开发笔记
  6. [记录]Nginx配置实现&&和||的方法实例
  7. 列表 元组 range
  8. Baozi Leetcode solution 1036: Escape a Large Maze
  9. CF1195C Basketball Exercise (dp + 贪心)
  10. 设计模式:策略模式,Java集合定制排序的核心思想