您还未登录!|登录|注册|帮助
� 首页
� 业界
� 移动
� 云计算
� 研发
� 论坛
� 博客
� 下载
� 更多
linux 驱动 之路
� 目录视图
� 摘要视图
� 订阅
“移动开发那点事”——主题征文活动 浓缩六届精华,国内大数据领域最纯粹技术盛会 CSDN 高校俱
乐部专家巡讲讲师招募
移动开发者大会最新议题发布,八折抢票! 2013 年 1 月微软 MVP 申请开始啦! 2012 年 10 月当选
微软 MVP 的 CSDN 会员名单揭晓!
linux select
机制
分类: wifi 2012-04-10 14:44 445 人阅读 评论(0) 收藏 举报
Linux select 学习笔记★★★★★ [嵌 入 式 ]
select 系统调用是用来让我们的程序监视多个文件描述符(file descrīptor)的状态变化的。程
序会停在 select 这里等待,直到被监视的文件描述符有某一个或多个发生了状态改变。
select()的机制中提供一 fd_set 的数据结构,实际上是一 long 类型的数组, 每一个数组元
素都能与一打开的文件描述符(不管是 Socket 描述符,还是其他 文件或命名管道或设备描
述符)建立联系,建立联系的工作由程序员完成, 当调用 select()时,由内核根据 IO 状态
修改 fd_set 的内容,由此来通知执 行了 select()的进程哪一 Socket 或文件可读,
select 函数原型如下:
int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval
*timeout);