Linux下select的使用小记
来源:互联网 发布:java比较日期是否相等 编辑:程序博客网 时间:2024/06/08 02:23
今天使用select编程,问题很多,以前真的没有仔细研究过。
出现了以下几个问题
1 recvfrom在接收时,提供给系统调用的最后一个参数,客户端的地址结构,其长度必须进行初始化,如果为0,则不能接收数据。
2 select的第一个参数为所有监视的文件描述符的最大值+1,而不是监视的文件描述符个数+1。
3 不要监视那些经常可用的文件描述符,如果这样做,select会一直返回。
4 在select返回后,如果监视的文件描述符没有状态改变,则在fd_set中此文件描述符会被清0,因此在select的循环中,每次进入都要重新设置我们所关注的文件描述符。
5 如果select使用了超时操作,每次返回select都会修改计时器,将计时器设为余下的时间,因此如果使用了计时器,每次进入循环都要重置计时器。pselect没有这个毛病。
下面是linux下的基于select的一个UDP反射服务器的示例代码:
下面是一个python的UDP反射客户端
- Linux下select的使用小记
- linux下select使用
- Linux下select函数的使用
- Linux下select函数的使用
- Linux下select函数的使用
- linux下select函数的使用
- Linux下select函数的使用
- Linux下select函数的使用
- Linux下select函数的使用
- Linux下select函数的使用
- Linux下select函数的使用
- Linux下select函数的使用
- Linux下select函数的使用
- Linux下select函数的使用
- Linux下select使用陷阱
- Linux环境下MySQL-python使用小记
- linux下select,poll,epoll的使用与重点分析
- linux下的Select函数
- [Java]20非常有用的Java程序片段
- oracle概要文件存储位置
- Java的线程最大数量
- nginx module 开发谈(3)
- Redhat5.4下安装oracle10g
- Linux下select的使用小记
- 技术人员职业生涯的红色警报
- magento 1.4 -- 自定义变量(Custom Variables)使用初探
- 国外专家谈游戏制作
- 《大话设计模式》- 代理模式设计
- javascript prototype介绍的文章
- 海明距离
- 交叉编译gstreamer for arm
- Using util package