资源和工具
基础
x.1 select
int fs_sel;
fd_set fs_read;
struct timeval time;
FD_ZERO(&fs_read);//FD_ZERO(*set):将set初始化为空集NULL。
FD_SET(fd, &fs_read);//FD_SET(s,*set):向集合添加描述字s。
time.tv_sec = 1;
time.tv_usec = 0;
// int select(
// int nfds ,
// fd_set* readfds ,
// fd_set* writefds ,
// fd_set* exceptfds ,
// const struct timeval* timeout
// );
// nfds:本参数忽略,仅起到兼容作用。
// readfds:(可选)指针,指向一组等待可读性检查的套接口。
// writefds:(可选)指针,指向一组等待可写性检查的套接口。
// exceptfds:(可选)指针,指向一组等待错误检查的套接口。
// timeout:select()最多等待时间,对阻塞操作则为NULL。
//wait 1 sec
//watch the fd_sets readable or writeable
fs_sel = select(fd + 1, &fs_read, NULL, NULL, &time);
网友评论