函数原型:
#include <sys/select.h>
int select(int maxfdpl + 1, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *tvptr);
return :
>0 准备就绪的描述符数目
0 超时
-1 出错
FD系列宏:
FD_ZERO(fd_set *fdset);//解除所有和描述符集的绑定
FD_SET(int fd, fd_set *fdset);//将相应的文件描述符集和药监听的描述符绑定
FD_ISSET(int fd, fd_set *fdset);//判断在监听的描述符是否可读,可写或者异常,返回值:若fd在文件描述符集中,返回非0值,否则返回0
FD_CLR(int fd, fd_set *fdset);//解除一个指定的文件描述符