socketserver库的使用
tcp的多线程定制(只需定制服务端)
import socketserver
class MyClass(socketserver.BaseRequestHandler):
def handle(self):
print(self)
print(self.request[0].decode())
print(self.request[1])
print(self.client_address)
self.request[1].sendto(f'我收到了{self.request[0].decode("utf8")}'.encode(),self.client_address)
if __name__ == '__main__':
socket = socketserver.ThreadingUDPServer(('192.168.11.131',8088),MyClass)
socket.serve_forever()
udp的多线程定制
import socketserver
class MyClass(socketserver.BaseRequestHandler):
def handle(self):
print(self.request[0].decode())
print(self.request[1])
print(self.client_address)
self.request[1].sendto(f'我收到了{self.request[0].decode("utf8")}'.encode(),self.client_address)
if __name__ == '__main__':
socket = socketserver.ThreadingUDPServer(('192.168.11.131',8088),MyClass)
socket.serve_forever()
通信循环内部封装了,不用写while True: