通信过程中拔掉网络 , 重启TCP客户端后出现无法使用服务端情况 :报错:
[Errno 56] Socket is already connectedconnect
查看log:显示是connect成功,然后卡在写数据这里了,我看了一下服务端,一直没有断开客户端上一次连接。当前 这个连接也并没有真正的成功。
下面这段代码cnn连接之后,也没有报错。看起来是上次的连接没有释放,头大~~~
程序跟电脑都重启了没有用。必须得重启TCP的服务端才能正常再一次连接跟通信。
try: cnn = socket.socket(socket.AF_INET, socket.SOCK_STREAM) cnn.connect((self.ip_address, self.port)) self.cnn = cnn return cnn except: self.state_listener.run_message("server not find or not open. {}".format(traceback.format_exc())) self.close() if cnn is not None: cnn.close() return None