Chinaunix首页 | 论坛 | 博客
  • 博客访问: 68329
  • 博文数量: 30
  • 博客积分: 1260
  • 博客等级: 中尉
  • 技术积分: 285
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-03 12:27
文章分类

全部博文(30)

文章存档

2010年(30)

我的朋友

分类:

2010-06-25 17:35:36

select函数原型:
int select(int maxfdp,fd_set *readfds,fd_set *writefds,fd_set *errorfds,struct timeval *timeout);

select函数通常有两种不同的用法:
1。用于定时器
用于定时作用时,除timeout外,其它参数设为NULL,timeout是指select的超时时间,不同的设置有不同的状态:
1。timeout设为空指针,则select工作于阻塞模式
2。timeout设为0,则变成一个纯粹的非阻塞函数,不管情况如何都立即返回
3。timeout设为大于0,则select函数在该时间内阻塞,超时时间内有事件发生则返回

关于定时精度问题,网络上有人写过代码进行测试过,发现与usleep等其它函数调用相比,对于HZ为100的节拍,select可以达到最高的精度,但也不超过1个节拍

2。I/O复用

待继

阅读(503) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~