python - 套接字错误 "[Errno 9] Bad file descriptor"可能是什么原因

标签 python sockets python-2.7

我有一个复杂的 python (2.7.3) 脚本,它试图通过

打开套接字连接
self.socket.close()
# doing something else
self.socket.connect((host, port))

但我得到的只是以下套接字错误:

error: [Errno 9] Bad file descriptor

host:port 接受连接,因为我已经用 nc host port 手动验证了这一点。那么,打开与给定端口的连接时出现此错误的可能原因是什么,这实际上有效?

我不能也不会发布完整的脚本,因为它太复杂且与这个问题无关。我只是想知道这个错误的所有可能原因,以及如何检查和修复它们。

最佳答案

您将需要创建一个新的套接字对象。也许 self.socket = socket.socket() 在关闭前一个套接字之后和连接之前。

关于python - 套接字错误 "[Errno 9] Bad file descriptor"可能是什么原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17207051/

相关文章:

python - 有没有办法为 django 项目中的所有应用程序使用一个静态文件夹

Java - 从客户端获取服务器的主机名和/或 ip 地址

python - 使用非阻塞 udp 读取时丢失消息

python - Open CV Hand Recognition - 让手掌的backProjection更准确?

python - 在 Pandas 中,如何使用一个表中的值作为索引从另一个表中提取数据?

python - pip 安装私有(private)包

python - Django ImageField 默认值

java - 从字节数组转换为可绘制图像会产生损坏的图像 : Android

python - 如何提高这个程序的效率?

python-2.7 - 生成代码文档时如何排除意外缩进警告的原因?