tcp/ip网络编程
Unique-You
这个作者很懒,什么都没留下…
展开
-
IO多路复用;epoll;select
I/O多路复用(又被称为“事件驱动”),首先要理解的是,操作系统为你提供了一个功能,当你的某个socket可读或者可写的时候,它可以给你一个通知。这样当配合非阻塞的socket使用时,只有当系统通知我哪个描述符可读了,我才去执行read操作,可以保证每次read都能读到有效数据而不做纯返回-1和EAGAIN(read发现输入缓冲中没数据可读时返回-1,并在errno中保存EAGAIN常量)的无用功...转载 2018-06-29 10:59:13 · 346 阅读 · 0 评论 -
Linux IO模式及 select、poll、epoll详解
点击打开链接同步IO和异步IO,阻塞IO和非阻塞IO分别是什么,到底有什么区别?不同的人在不同的上下文下给出的答案是不同的。所以先限定一下本文的上下文。本文讨论的背景是Linux环境下的network IO。 一 概念说明在进行解释之前,首先要说明几个概念:- 用户空间和内核空间- 进程切换- 进程的阻塞- 文件描述符- 缓存 I/O用户空间与内核空间现在操作系统都是采用虚拟存储器,那么对32位操...转载 2018-06-29 11:34:34 · 199 阅读 · 0 评论