因为是在线程里面调用Accept(),所以不希望一直阻塞。
- struct timeval timeout={2,0};
- fd_set rfd;
- int nfds;
- while (1)
- {
- FD_ZERO(&rfd);
- FD_SET(listen,&rfd);
- nfds = select(1,&rfd,(fd_set*) 0,(fd_set*) 0,&timeout);
- if(nfds==0)
- continue;
- else if(nfds>0)
- FD_CLR(listen,&rfd);
- //accept socket
- else
- break;
- }