select() 系统调用提供一个机制来实现同步多元I/O:
#include <sys/time.h>
#include <sys/types.h>
#include <unistd.h>
int select (int n,
fd_set *readfds,
fd_set *writefds,
fd_set *exceptfds,
struct timeval *timeout);
FD_CLR(int fd, fd_set *set);
FD_ISSET(int fd, fd_set *set);
FD_SET(int fd, fd_set *set);
FD_ZERO(fd_set *set);
调用select() 将阻塞,直到指定的文件描述符准备好执行I/O,或者可选参数timeout指定的时间已经 过去。
监视的文件描述符分为三类set,每一种对应等待不同的......
阅读全文