ChinaUnix.net
相关文章推荐:

select函数引起的越界

fd_set 设置的监听是谁? select选择的是谁 ? 最大监听是多少? 轮询监听有没有错误?

by a174787252 - 网络技术 - 2013-05-17 18:23:48 阅读(879) 回复(0)

相关讨论

下面一段代码 void do_sleep (int i, int loop) { int val = (i * i + 7 * i + loop) % SLEEP_BUFS; struct timeval tv; val = sleepbuf[val]; tv.tv_sec = 0; tv.tv_usec = val; select(0, NULL, NULL, NULL, &tv); } 这里的select()函数是起sleep作用吗,第一回见,请教各位 不知道发到哪个版。。。发到这里了

by kitiz - 内核源码 - 2011-07-07 18:36:09 阅读(2196) 回复(2)

xxx 本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/69832/showart_1924838.html

by hubo214 - Linux文档专区 - 2009-05-11 23:07:37 阅读(654) 回复(0)

select函数的C API版本是这样的: int select( int width,//最大句柄数加1 fd_set *read_fds,//监视的可读文件句柄集合。 fd_set *write_fds,//监视的可写文件句柄集合。 fd_set *excepr_fds,//监视的异常文件句柄集合。 struct timeval *timeout);本次select()的超时结束时间。(见/usr/sys/select.h, 可精确至百万分之一秒!) ...

by wqfhenanxc - Linux文档专区 - 2008-04-01 15:59:14 阅读(755) 回复(0)

允许进程指示内核等待多个事件中的任一个发生,并仅在一个或多个事件发生或经过某指定的时间后才唤醒进程。 作为一个例子,我们可以调用函数select并通知内核仅在下列情况发生时才返回 集合{1,4,5}中的任何报述字准备好读 集合{2,7}的任何描述字准备好写 集合{1,4}中的任何描述字有异常条件待处理 已经过了10.2秒 通知内核我们对哪些描述字感兴趣(读、写或异常条件)以及等待多长时间。 描述字不受限于套接口:任何描述字(例...

by huqwstar53 - Linux文档专区 - 2007-01-05 11:04:32 阅读(663) 回复(0)

重读2.4 052 fs/select.c target="_blank">http://docs.google.com/Doc?id=dcbsxfpf_213vc73kssk 2008-4-22 这里讨论的是select和poll的系统调用实现方式. 首先要熟悉的是内核中为poll和select定义的各种输入输出消息的含义: POLLIN 有数据可以读入,read不会阻塞,注意:select的请情况下,即使到EOF也是ready的. POLLPRI 紧急数据,比如TCP,或者packet 模式的peseudo-terminal发现slave的状态有变化....

by yuchuan2008 - Linux文档专区 - 2008-09-27 11:18:12 阅读(1151) 回复(0)

我有两个线程 在其中一个线程中retval = select(fd + 1,&rfds,NULL,NULL,NULL);等待有数据可读, 如果我在另外一个线程中close(fd); select 不退出 这是为什么?有没有什么办法?

by guwengchxuixue - Linux环境编程 - 2011-11-04 10:31:12 阅读(1713) 回复(2)

[code]select(fd + 1, &fds, NULL, NULL, &tv);[/code]请问为什么将fd加1,而不是fd本身啊?

by daniel_kohler - Linux环境编程 - 2011-03-21 19:50:44 阅读(2235) 回复(4)

int select(int n,fd_set * readfds,fd_set * writefds,fd_set * exceptfds,struct timeval * timeout); 编程出现问题 首先,设置超时时间 struct timeval overtime; overtime.tv_sec = 2; overtime.tv_usec = 0; ret = select(max, &fdset, NULL, NULL, &overtime); 用TCP连接,连接套接字已经加入fdset中,但是运行程序后,在第一个2秒超时后,ret根本不等待超时, 一直不停的返回0.以至于连接上了也无法发送数据。 这是为何?...

by whyliyi - Linux环境编程 - 2014-08-14 13:40:41 阅读(7993) 回复(8)

select侦听一个socket,发现返回socket可读,但检查数据长度却为0,这是什么情况?

by mxmx2000 - C/C++ - 2010-08-19 21:51:56 阅读(1567) 回复(4)

select函数详解 -------------------------------------------------------------------------------- 来自 http://www.phpchina.com/html/89/36289-16239.html select系统调用是用来让我们的程序监视多个文件句柄(file descrīptor)的状态变化的。程序会停在select这里等待,直到被监视的文件句柄有某一个或多个发生了状态改变。 文件在句柄在Linux里很多,如果你man某个函数,在函数返回值部分说到成功后有一个文件句柄...

by wangchenxicool - Linux文档专区 - 2010-02-22 20:27:52 阅读(1874) 回复(0)