10

我有一个复杂的 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。那么,我在打开与给定端口的连接时收到此错误的可能原因是什么,这实际上是有效的?

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

4

1 回答 1

26

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

于 2013-06-20T06:58:38.023 回答