初学Python之异步多线程:sockserver

时间:2023-03-09 06:40:34
初学Python之异步多线程:sockserver
异步多线程:
服务端
 import socketserver

 class MyServer(socketserver.BaseRequestHandler):
def setup(self):
pass def handle(self):
#print(self.request)
#print(self.client_address)
#print(self.server)
conn = self.request
conn.sendall(bytes('hello','utf-8'))
flag = True
while flag:
data = str(conn.recv(1024),'utf-8')
print(data) if data == 'exit':
flag =False
conn.sendall(bytes('sb','utf-8'))
conn.close() def finish(self):
pass if __name__=='__main__':
server = socketserver.ThreadingTCPServer(('127.0.0.1',9999),MyServer)
server.serve_forever()

客户端

 import socket

 client = socket.socket()

 ip_port = ('127.0.0.1',9999)
client.connect(ip_port) while True:
data = str(client.recv(1024),'utf-8')
print(data)
inp = input('clent:') client.sendall(bytes(inp, 'utf-8'))
if inp=='exit':
break