免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1497 | 回复: 5
打印 上一主题 下一主题

询问fd_set [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-06-10 11:42 |只看该作者 |倒序浏览
fd_set是什么类型,怎么用,简单说说。

论坛徽章:
0
2 [报告]
发表于 2004-06-10 12:10 |只看该作者

询问fd_set

man 2 select

论坛徽章:
0
3 [报告]
发表于 2004-06-10 15:31 |只看该作者

询问fd_set

什么意思?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
4 [报告]
发表于 2004-06-10 17:57 |只看该作者

询问fd_set

参考《unix环境高级编程》。

论坛徽章:
0
5 [报告]
发表于 2004-06-11 00:47 |只看该作者

询问fd_set

[quote]原帖由 "gg123"]什么意思?[/quote 发表:

在终端输入man 2 select ,看完手册就懂了。
  1. #include <unistd.h>;
  2. #include <stdlib.h>;
  3. #include <fcntl.h>;
  4. #include <sys/time.h>;
  5. int main( void )
  6. {
  7.     int console, serial;
  8.     struct timeval tv;
  9.     fd_set rfd;
  10.     int n;
  11.     if( ( console = open( "/dev/con1", O_RDONLY ) ) == -1
  12.     ||    ( serial  = open( "/dev/ser1", O_RDONLY ) ) == -1 ) {
  13.       perror( "open" );
  14.       return EXIT_FAILURE;
  15.     }
  16.     FD_ZERO( &rfd );
  17.     FD_SET( console, &rfd );
  18.     FD_SET( serial,  &rfd );
  19.     tv.tv_sec = 5; /* set a 5 second timeout */
  20.     tv.tv_usec = 0;
  21.     switch ( n = select( 1 + max( console, serial ),&rfd, 0, 0, &tv ) ) {
  22.       case -1:
  23.             perror( "select" );
  24.             return EXIT_FAILURE;
  25.       case  0:
  26.             puts( "select timed out" );
  27.             break;
  28.       default:
  29.             printf( "%d descriptors ready ...\n", n );
  30.             if( FD_ISSET( console, &rfd ) )
  31.                           puts( " -- console descriptor has data pending" );
  32.             if( FD_ISSET( serial, &rfd ) )
  33.                           puts( " -- serial descriptor has data pending" );
  34.      }
  35.     return EXIT_SUCCESS;
  36. }

复制代码

论坛徽章:
0
6 [报告]
发表于 2004-06-11 08:20 |只看该作者

询问fd_set

connect,lenovo,devel:
你们在哪个城市,有深圳的吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP