目的:实现tcp的多连接
""" Server端 1.导入模块 2.创建类,继承 3.多线程 4。永远开启 """ import socketserver class MyService(socketserver.BaseRequestHandler): def handle(self): while 1: info = input('Server>>>') self.request.send(info.encode('utf-8')) if info == 'byte': break res = self.request.recv(1024) new_res = res.decode('utf-8') print(new_res) # if new_res == 'byte': # break if __name__ == '__main__': server = socketserver.ThreadingTCPServer(('127.0.0.1', 8010), MyService) server.serve_forever()
""" Client端 """ import socket sk = socket.socket() sk.connect(('127.0.0.1', 8010)) while 1: msg = sk.recv(1024).decode('utf-8') print(msg) if msg == 'byte': break info = input('Client>>>') sk.send(info.encode('utf-8')) if info == 'byte': break sk.close()
本文介绍了一种使用Python的socketserver模块实现TCP多连接的服务器与客户端的方法。通过继承BaseRequestHandler类并利用多线程,服务器可以同时处理多个客户端的连接请求。文章提供了完整的代码示例,包括服务器端的无限循环接收与发送数据,以及客户端的连接与数据交互过程。
205

被折叠的 条评论
为什么被折叠?



