[小结]select的使用注意事项
来源:互联网 发布:reactjs 循环遍历json 编辑:程序博客网 时间:2024/06/05 18:45
int select( int amxfdp1 , fd_set* readset ,fd_set * writeset ,fd_set *exceptset , const struct timeval *timeout)
对于要测试的socket是不是每进行一次select前都要进行FD_SET操作,来设置函数中的writeset及readset?
网上搜索到的一些有关select函数的用法注意事项:
这两天改掉了若干bug,都是关于select的使用
1,一个服务器程序,在select等待期间,会由于一个错误连接造成混乱,查来查去原来是没有在处理掉失败连接的时候将此文件描述符从等待集合中去除,在加了一句FD_CLR之后,程序恢复正常工作。
2,仍然是在select等待期间,有信号发生,之后select的工作就不再正确,原来是在信号处理函数中断select之后,select返回EINTR错误,程序必须处理掉这一错误。
3,select可以不必无限期等待,在最后一个参数中制定等待的时间即可,但这一时间在select返回时会被修改,因此当循环使用select时必须反复给时间变量赋值
对于要测试的socket是不是每进行一次select前都要进行FD_SET操作,来设置函数中的writeset及readset?
网上搜索到的一些有关select函数的用法注意事项:
这两天改掉了若干bug,都是关于select的使用
1,一个服务器程序,在select等待期间,会由于一个错误连接造成混乱,查来查去原来是没有在处理掉失败连接的时候将此文件描述符从等待集合中去除,在加了一句FD_CLR之后,程序恢复正常工作。
2,仍然是在select等待期间,有信号发生,之后select的工作就不再正确,原来是在信号处理函数中断select之后,select返回EINTR错误,程序必须处理掉这一错误。
3,select可以不必无限期等待,在最后一个参数中制定等待的时间即可,但这一时间在select返回时会被修改,因此当循环使用select时必须反复给时间变量赋值
- [小结]select的使用注意事项
- 使用Select的3个注意事项
- SELECT LAST_INSERT_ID() 的使用和注意事项
- SELECT LAST_INSERT_ID() 的使用和注意事项
- SELECT LAST_INSERT_ID() 的使用和注意事项
- bootstrape select使用小结
- Linux中使用select()注意事项
- go里面select-case和time.Ticker的使用注意事项
- 关于使用select语句对变量赋值的注意事项
- JS实现select去除option的使用注意事项
- go里面select-case和time.Ticker的使用注意事项
- AudioRecord 使用小结与注意事项
- AudioRecord 使用小结与注意事项
- AudioRecord 使用小结与注意事项
- iphone上使用Sqlite的注意事项小结like
- iphone上使用Sqlite的注意事项小结like
- select、poll、epoll使用小结
- select、poll、epoll使用小结
- [小结]Windows环境下Unicode编程总结
- 想了解一下OA和ERP方面的东西
- 学习Jetspeed
- 在Linux下实现comer的TCP/IP协议栈--ARP地址解析协议(下)
- 搜索引擎如何保证返回给用户的结果的准确性?
- [小结]select的使用注意事项
- 毕业设计(六)
- 20060418 论坛调整
- List of partition identifiers for PCs
- 上机签到:信息检索技术 04图档1 第八次
- Net下的AppDomain编程
- 今天的工作挺快做完了
- TB TEST
- [小结]有关GetPrivateProfileString的使用方法