Python 之socketserver模块实现多线程
Posted 样子2018
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 之socketserver模块实现多线程相关的知识,希望对你有一定的参考价值。
一、服务端
import socketserver import time conn_poll = [] class MyServer(socketserver.BaseRequestHandler): def handle(self): print(‘... connected from {}‘.format(self.client_address)) conn_poll.append(self.client_address) while True: # request.recv 方法接收客户端发来的消息 data = self.request.recv(1024) if data == ‘exit‘: conn_poll.remove(self.client_address) # 发送exit给客户端断开连接 self.request.sendall(data.encode(‘utf-8‘)) break # request.sendall 方法发送消息给客户端 self.request.sendall(‘[{}] {}‘.format(time.ctime(), data.decode(‘utf-8‘)).encode(‘utf-8‘)) def finish(self): print(‘finish‘) if __name__ == ‘__main__‘: s = socketserver.ThreadingTCPServer((‘‘, 12306), MyServer) s.serve_forever()
以上是关于Python 之socketserver模块实现多线程的主要内容,如果未能解决你的问题,请参考以下文章