摘要: epoll是I/O复用模型中相对epoll和select更高效的实现对套接字管理的函数。 epoll有两种模式 LT 和 ET 二者的差异在于 level-trigger 模式下只要某个 socket 处于 readable/writable 状态,无论什么时候进行 epoll_wait 都会返回该 阅读全文
posted @ 2017-02-21 07:45 kami_coder 阅读(681) 评论(0) 推荐(0) 编辑
摘要: epoll模型有两种工作模式,ET和LT两种模式下都有一些细节值得注意,以下是一些思考: 一、ET模式下 Q1:调用accept时,到底TCP完成队列里有多少个已经建立好的连接? 这里又得分情况来说: 没有连接。这种情况发生在TCP连接被客户端夭折,即在服务端调用accept之前客户端给出一个RST 阅读全文
posted @ 2017-02-21 07:31 kami_coder 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 在一个非阻塞的socket上调用read/write函数,返回EAGAIN或者EWOULDBLOCK(注:EAGAIN就是EWOULDBLOCK)。 从字面上看,意思是: EAGAIN: 再试一次 EWOULDBLOCK:如果这是一个阻塞socket, 操作将被block perror输出:Reso 阅读全文
posted @ 2017-02-21 07:24 kami_coder 阅读(179) 评论(0) 推荐(0) 编辑