计算机网络之poll
来源:互联网 发布:大学生滚床单知乎 编辑:程序博客网 时间:2024/06/05 04:35
poll使用了一个pollfd的指针来实现,pollfd结构包含了要监视的event和要发生的event,且pollffd并没有最大数量限制。poll返回后,需要轮询pollfd来获取就绪的描述符。
代码
1 #include<stdio.h>
2 #include<poll.h>
3 #include<string.h>
4
5 int newpoll()
6 {
7 struct pollfd poll_set[1];
8 poll_set[0].fd=0;
9 poll_set[0].events = POLLIN;
10 poll_set[0].revents = 0;
11 int timeout = 30000;
12 char buf[1024];
13 while(1)
14 {
15 switch(poll(poll_set,1,timeout))
16 {
17 case -1:
18 printf("poll error!\n");
19 break;
20 case 0:
21 printf("poll time out!\n");
22 break;
23 default:
24 {
25 memset(buf,'\0',sizeof(buf));
26 printf("poll return\n ");
27 fgets(buf,sizeof(buf)-1,stdin);
28 printf("msg is:%s\n",buf);
29 }
30 break;
31
31
32 }
33 }
34 return 0;
35 }
36 int main()
37 {
38 newpoll();
39 return 0;
40 }
运行解果:
第一次的时候我们把时间设置为300
看到如上解果,下面我们把时间稍微设置的长一点
- 计算机网络之poll
- 【计算机网络】I/O多路转接之poll
- 计算机网络 之 计算机网络概述
- 《计算机网络原理》之计算机网络概述
- poll服务器---多路连接之 poll
- 多路复用之poll
- 6410之poll机制
- linux之select/poll
- IO多路复用之poll
- linux之-----------poll函数
- linux驱动之poll
- 多路复用之poll函数
- IO多路复用之poll
- IO多路复用之poll
- LinuxIO多路复用之poll
- 源码剖析之poll
- 【计算机网络】:计算机网络之路由协议之我见
- 第05章 计算机网络 之 计算机网络分类
- ES5中新增的Array方法详细说明
- 剑指offer——非常规法求1+2+3+...+n(短路性质,好题)
- 参加 TiDB Tech Day,来体验一场真正的技术碰撞
- leetcode: 6. ZigZag Conversion
- Linux之grep工具的使用
- 计算机网络之poll
- html5 实现网页截屏 页面生成图片(图文)
- 锋利的Jquery——学习笔记(二)Jquery选择器
- cocos多个图片按钮之同一显示框显示内容与菜单显示消失
- c#设计模式之单例
- tcp/ip三次握手,四次挥手,十一种状态
- 安装sge-bij
- windows下maven私服nexus安装教程
- 带你入门 CSS Grid 布局