FreeBSD
stormbjm
这个作者很懒,什么都没留下…
展开
-
select, iocp, epoll,kqueue及各种I/O复用机制
首先,介绍几种常见的I/O模型及其区别,如下:blocking I/Ononblocking I/OI/O multiplexing (select and poll)signal driven I/O (SIGIO)asynchronous I/O (the POSIX aio_functions)blocking I/O 这个不用多解转载 2015-10-28 11:14:15 · 581 阅读 · 0 评论 -
可扩展的事件复用技术:epoll和kqueue
通常来说我喜欢Linux更甚于BSD系统,但是我真的想在Linux上拥有BSD的kqueue功能。什么是事件复用技术假设你有一个简单的web服务器,并且那里已经打开了两个socket连接。当服务器从两个连接那里都收到Http请求的时候,它应该返回一个Http响应给客户端。但是你没法知道那个客户端先发送的消息和什么时候发送的。BSD套接字接口的阻塞行为意味着,如果你在一个连接上调用rec转载 2015-10-28 15:17:06 · 1119 阅读 · 0 评论 -
阻塞 非阻塞 select epoll
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。作者:蓝形参链接:http://www.zhihu.com/question/20122137/answer/14049112来源:知乎首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象。不管是文件,还是套接字,还是管道,我们都可以把他们看作流。之后我们转载 2015-10-28 11:11:15 · 991 阅读 · 0 评论