hcdy.net
当前位置:首页 >> FD_sEt >>

FD_sEt

fd_set set;FD_ZERO(&set); /*将set清零使集合中不含任何fd*/FD_SET(fd, &set); /*将fd加入set集合*/FD_CLR(fd, &set); /*将fd从set集合中清除*/FD_ISSET(fd, &set); /*在调用select()函数后,用FD_ISSET来检测fd是否在set集合中,当检测到fd在s...

select()机制中提供一fd_set的数据结构,实际上是一long类型的数组,每一个数组元素都能与一打开的文件句柄(不管是socket句柄,还是其他文件或命名管道或设备句柄)建立联系,建立联系的工作由程序员完成,当调用select()时,由内核根据IO状态修...

fd_set in_set={0};表示将结构体的成员初始化为0; typedef struct fd_set { u_int fd_count; SOCKET fd_array[FD_SETSIZE]; } fd_set 也就是第一个第2个的value 都是0; 还有FD_SET(m_socket.m_hSocket,&in_set); m_socket 估计是CSocket的子类

将套接口listensocket添加到vsiplisten_set 队列里面 后者可以通过传递给select函数来监听这一组套接口的状态,例如套接口上是否有数据传来等状态

typedef struct{/*XPG4.2requiresthismembername.Otherwiseavoidthenamefromtheglobalnamespace.*/#ifdef__USE_XOPEN__fd_maskfds_bits[__FD_SETSIZE/__NFDBITS];#define__FDS_BITS(set)((set)->fds_bits)#else__fd_mask__fds_bits[__FD_SETSIZE...

select的详细介绍Select的函数格式(我所说的是Unix系统下的伯克利socket编程,和windows下的有区别,一会儿说明):int select(int maxfdp,fd_set *readfds,fd_set ...

FD_ZERO宏完成的工作就是一个初始化套接字集合(其实就是清空套接字集合),就你给出的程序而言,FD_ZERO在循化外循环内都是一样的。不过一般来讲,初始化服务端的所有套接字组成的集合就应该把FD_ZERO放在循环外,而初始化具有可读或者可写属性...

谢过进程之间通信的都知道的代码,全部就粘贴上了, 中间在判断文件是否可读写的时候有如下代码: FD_ZERO(&read_fd); FD_SET(rfd,&read_fd); FD_SET(fileno(stdin),&read_fd); 前两个都可以理解,第三行的 FD_SET(fileno(stdin),&read_fd);是什...

是一个结构体fd_set的缩写 这样定义的 fd_set fdsRead; fd_set fdsWrite; 可读可写的数据集合

http://blog.vckbase.com/bastet/archive/2007/06/08/21533.html

网站首页 | 网站地图
All rights reserved Powered by www.hcdy.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com