当前位置: 技术问答>linux和unix
用select怎么判断是否有一个连接进来???
来源: 互联网 发布时间:2016-11-07
本文导语: RT,想写一个多人聊天程序,FD_ISSET(sockfd,&fd_set)是判断是否有读的,FD_ISSET(0,&fd_set)是判断是否有写的,那怎么判断是否有一个连接进来? | 下面是一个简单的例子,其中sListen是监听套接字 FD_SET a...
RT,想写一个多人聊天程序,FD_ISSET(sockfd,&fd_set)是判断是否有读的,FD_ISSET(0,&fd_set)是判断是否有写的,那怎么判断是否有一个连接进来?
|
下面是一个简单的例子,其中sListen是监听套接字
FD_SET allSockfd; //服务器所有套接字集合
FD_ZERO(&allSockfd); //清空集合
FD_SET(sListen, &allSockfd); //将监听套接字加入该集合
FD_SET readfd; //定义满足可读套接字集合
FD_SET writefd; //定义满足可写套接字集合
FD_ZERO(&readfd); //清空可读集合
FD_ZERO(&writefd); //清空可写集合
readfd = allSockfd; //赋值
writefd = allSockfd; //赋值
//无限期等待套接字满足条件
int nRet = select(0, &readfd, &writefd, NULL, NULL);
if (nRet > 0)
{
//遍历所有套接字集合
for (int i = 0; i
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
站内导航:
特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!