ChinaUnix.net
相关文章推荐:

poll函数详解

最近小弟在学习poll,可是只有函数原型,不知道怎么运用。 高手能不能给个实例程序啊?

by sharkconi - C/C++ - 2007-01-25 10:42:24 阅读(1830) 回复(3)

相关讨论

在代码中看到这样的语句: pollfd ->events = pollRDNORM; /*无阻塞的读常规数据*/ ...............       numready = poll(pollfd, numfds, -1); /*既然是无阻塞的读,那为什么time又是-1,不超时呢?*/ ............... 既然poll函数不会阻塞在read事件上,那这个timeout是否设置为超时,还有什么意义呢? 谢谢!

by new_learner - C/C++ - 2008-02-13 03:40:04 阅读(2134) 回复(0)

应用程序的select()系统调用,调用驱动中的poll()方法。 不理解的是在下面的poll()方法实现中,首先调用poll_wait将等待队列添加到wait结构中,接下来是个判断语句 if (dev->rp != dev->wp) mask |= pollIN | pollRDNORM; /* readable */ 只考虑可读情况。如果这个if语句的条件不满足,那么就不会返回可读,也就是返回0。那么在这里怎么实现阻塞的呢?也就是说如果在应用的select()系统中,指定一个等待时间,在...

by luanjian - 内核/嵌入技术 - 2006-07-19 12:30:54 阅读(14597) 回复(7)

我的代码如下: /* polldemo.c*/ #include #include #include <poll.h> #include #include #include int main(int argc, char *argv[]) { int i, n, fds[2]; struct pollfd pfds[2]; if (argc!=3) { fprintf(stderr, "use: polldemo File1 File2\n"); exit(1); } for (i=0;i<2 ;i++ ) { if ((fds=open(argv[i+1],O_RDONLY))<0) { perror(ar...

by dell9 - C/C++ - 2006-05-25 12:31:56 阅读(1538) 回复(6)

学习steven大师的unix network programming ,前面几章的内容都很好理解,什么listen, socket, accept等都很easy理解。 可是到了介绍select , poll函数时候,俺却怎么都不理解了,连为什么要用select, poll这两个函数和这两个函数干么用的俺都没法理解。 大侠们帮俺说说select, poll函数

by mill888 - C/C++ - 2008-02-13 14:37:56 阅读(8510) 回复(5)

如果在windows下面想要实现端口复用的话应该怎么做?

by loveeagle - C/C++ - 2005-04-12 20:54:05 阅读(924) 回复(2)

请问那位高手用过poll()这个函数,为什么我查不出这个函数的出处,请高人指点

by dontknowall - C/C++ - 2003-09-10 11:51:24 阅读(7675) 回复(4)
by xhl - C/C++ - 2004-08-18 09:25:37 阅读(1133) 回复(2)

proto_ops{}结构在linux\net.h中定义。是对应于socket套接口的操作集。但是我对其中的poll()函数不明白。它在proto_ops{}结构中定义如下: unsigned int (*poll) (struct file *file, struct socket *sock, struct poll_table_struct *wait); 我看了《UNIX网络编程》中对poll函数的介绍: poll 函数 原型: int poll (struct pollfd *fdarray, unsigned long nfds, int timeout ) 第一个参数是指向结构数组第一个元素的指针: s...

by flyingpiggy_zhu - 内核/嵌入技术 - 2006-01-14 17:34:17 阅读(1710) 回复(3)

第六章 I/O复用:Select和poll函数 在前一章中,我们遇到一个问题就是,客户端阻塞在了从标准输入中读取数据,与此同时,服务器由于某种原因要求关闭连接给客户端发送了一个FIN,而客户端只有从标准输入读到数据返回后才能知道连接已关闭。在这一章中介绍的I/O复用可以很好的解决这个问题。 1.I/O模型 a. Unix下共有五种I/O模型 阻塞I/O 非阻塞I/O I/O复用(select和poll) 信号驱动I/O(SIGIO) 异步I/O(Posix.1的aio_系列...

网络技术

by luyutong - 网络技术文档中心 - 2008-12-03 15:56:05 阅读(1487) 回复(0)

看书有写到: fds[0].events=pollIN; fds[1].events=pollIN; 这句: while(fds[0].events || fds[0].events) 这句有何意义呢? 都是返回1的吗? 还有一句: if(fds.revents) {} 这句又有何意义呢? 是返回一个如:例pollIN,它代表一个整数? 看了书没搞懂.非常感谢回答.

by linuxcici - C/C++ - 2006-06-21 23:36:16 阅读(1010) 回复(6)