请参阅以下示例输出: connection refused
我遇到的问题是为什么第一次调用s.connect()会抛出“Connection Refused”,但第二次调用会抛出“Invalid Argument”。这就像第一次调用将套接字对象置于某种错误状态。有没有办法重置它?
由于
答案 0 :(得分:2)
你这是在说:
s.connect((gethostname(), 4444))
gethostname()
不仅仅涉及连接到服务器。它初始化套接字的变量。
下次致电connect
时,s
已有值,但无效。所以,你得到Invalid argument
。
注意:s.connect()
实际上以connect()
作为第一个参数调用s
,因为connect定义为def connect(self, ...)
。