首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >xmpppy。在select中文件超出范围

xmpppy。在select中文件超出范围
EN

Stack Overflow用户
提问于 2012-04-09 07:18:44
回答 1查看 1.8K关注 0票数 2

我在用xmpppy。我创建了50多个xmpp连接线程。过了一段时间,我发现了一个错误:

File "transports.py", line 199, in pending_data return select.select([self._sock],[],[],timeout)[0] ValueError: filedescriptor out of range in select()

为什么会这样?

抱歉说我的话。

EN

回答 1

Stack Overflow用户

发布于 2012-04-09 18:16:03

xmpppy使用选择()系统调用来监视打开的连接。不幸的是,select()有一个相当尴尬的事实--在大多数系统上,它只能使用文件描述符号来监视连接,最多可以达到一定的限制,通常是1024。

这意味着,随着您打开更多的文件和连接,最终您将达到极限。

解决方案是让xmpppy使用轮询()或更现代(但特定于操作系统)的API,如epoll或kqueue。所有这些都可以通过Python的“选择”模块访问。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10070146

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档