One minute
从谈恋爱的角度理解各种 IO 模型
首先,本文把女孩子的爱慕看作在恋爱关系中的资源,那么就可以把男孩子看作应用程序,女孩子看作系统内核,这是文章的大前提。
同步阻塞 IO
男孩子追求某个女孩子,并且专注于这个女孩子,在追到手或者失败前不会对其他女孩子有任何行动,这就是同步阻塞 IO。
同步非阻塞 IO
男孩子表白了某个女孩子,但是没有去追求她,等女孩子准备好之后就自然成了他女朋友,这就是同步非阻塞 IO。
IO 多路复用
多路复用分两种,一种是男孩子使用广撒网的方式同时撩多个妹子,相当于使用 select 方法轮询,当有女孩子愿意成为他的女朋友时则配对成功。 还有一种就就比较高级,男孩子只要向一群女孩子发出寻女友的信号,这当中就会有妹子自动找上门来当他的女朋友,这就是使用 epoll 方法的 IO 多路复用。这也就是为啥 epoll 比 select 性能要高的多的原因。
异步 IO
异步 IO 是所有 IO 模型中编程难度最高的一种,如果非要类比的话大概只能比作可能存在未来的 Open Relationship 吧,但实际上也不太好类比。
33 Words
2018-10-28 17:30 +0000
阅读更多