select.select()参数文件描述符不能是负整数错误。

我正在用python 3.6.1制作一个简单的个人聊天应用。我在使用select.select时出现了这个错误。

Traceback (most recent call last):
  File "C:\Users\Nathan Glover\Google Drive\MAGENTA Chat\chat_server.py", line 
27, in <module>
    ready_to_read,ready_to_write,in_error = select.select(SOCKET_LIST,[],[],0)
ValueError: file descriptor cannot be a negative integer (-1)

这是代码。

    ready_to_read,ready_to_write,in_error = select.select(SOCKET_LIST,[],[],0)

这完全是因为我对select不是很了解,而文档也没有帮助。谁能解释一下为什么会出现这种情况?

解决方案:

我知道这个问题已经很久没有人问过了。但我想让OP和其他人知道这里的问题.这里的问题是SOCKET_LIST必须包含一个不存在的套接字连接,它可能在之前被断开。如果你把这样的连接传给select,它就会给出这样的错误信息

ValueError: file descriptor cannot be a negative integer (-1)

一个简单的解决方法就是把 select block里面的try–除了block和catch the error。当发现错误时,可以从SOCKET_LIST中删除连接。

给TA打赏
共{{data.count}}人
人已打赏
未分类

如何在VHDL中同时作用于两个信号(通信时钟)边缘?

2022-9-8 16:08:21

未分类

将多个列的聚合值作为键,将列转为行。

2022-9-8 16:08:23

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索