我正在尝试使用以下服务器代码在本地网络上运行python套接字服务器:
import socket
serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
serversocket.bind((socket.gethostname(), 9876))
serversocket.listen(5)
while True:
c, addr = serversocket.accept()
while True:
data = c.recv(1024).decode()
print(data)
c.send(data.encode())
然后,在另一台网络计算机上使用netcat,我可以连接到服务器并发送文本,并将其镜像回来。但是,经过大约两到三次尝试后,它突然退回到命令行,不再接受任何连接。但是,服务器端的行为相同,并且看起来好像看不到最后传入的消息。
如果我尝试通过另一个套接字连接到它,它会执行相同的操作,但是会引发错误104和错误32。
我完全陷入了困境。我尝试添加线程以及其他所有我能想到的东西。如果有任何人对发生这种情况的原因或解决方法有任何想法,我很想听听。谢谢!我正在使用python 3.5。
谢谢!