server 端的代码
import socket server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) addr = ("0.0.0.0", 9000) server.bind(addr) server.listen(5) while 1: print("waiting for connection") client, address = server.accept() print("connection from {}:{}".format(address[0], address[1])) while 1: data = client.recv(1024) if data == b"": break print(data) client.close() print("close connection from {}:{}".format(address[0], address[1]))
client 的代码
import socket addr = ("localhost", 9000) client = socket.socket(socket.AF_INET, socket.SOCK_STREAM) client.connect(addr) client.close() client.connect(addr)
运行的时候服务端没有啥问题, 但是在客户端的时候, 我先关闭再连接也就是 client 中的最后一行会报一个错:OSError: [WinError 10038] 在一个非套接字上尝试了一个操作, 我一直不懂为什么会报这个错, 有朋友帮我解释一下么