Программа подключается к серверу, и когда сервер закрывает соединение, если я пытаюсь восстановить соединение, он говорит: socket.error: [Errno 9] Bad file descriptor
Если я закрываю сокет в клиенте и затем пытаюсь восстановить соединение, он говорит: socket.error: [Errno 106] Transport endpoint is already connected
.
Есть ли способ восстановить его после разрыва трубы без создания нового сокета?
import socket
host = '127.0.0.1'
port = 1337
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
def loop():
try:
while 1:
print s.recv(512)
except socket.error:
#s.close()?
connect()
def connect():
s.connect((host, port))
loop()
connect()