首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

关于fd_set跟fd_isset的疑惑

2013-02-18 
关于fd_set和fd_isset的疑惑看了百度说,fd_set(fd,&fdset) // 将文件描述符fd放入集合fdset中fd_isset(fd,

关于fd_set和fd_isset的疑惑
看了百度说,
fd_set(fd,&fdset) // 将文件描述符fd放入集合fdset中
fd_isset(fd,&fdset)  //判断文件描述符是否在集合fdset中

然后,看到很多select的应用程序都是这样写的。

fd_clr(&fdset);  //首先清空fdset集合
fd_set(fd,&fdset);  //将待检测描述符放入fdset集合中

select(n+1,&fdset,null,null,null);  //判断fdset集合中是否有动作

//然后fd_isset再判断fd在不在fdset中
fd_isset(fd,&fdset);  // 

我的疑问就产生了,既然select之前的fd_set已经将fd放入了fdset集合之中,那么select之后,
再去检测判断fd_isset是否fd在fdset集合之中还有意义么?已经先期把fd放入了fdset中了,
然后后面又去判断是否在,这个是不是个伪命题呢?肯定都是在的啊?要不要select岂不是没作用了?
我的问题出现在哪里?我自己也很困惑,可能我对fd_set和fd_isset以及select的理解还不是很透彻,请高手
百忙之中点拨下,谢谢! select??fd_set?? fd_isset
[解决办法]
没有fd_set,select怎么知道该检测哪些描述符?

热点排行