程序如下:
1 import socketserver
2 class MyServer(socketserver.BaseRequestHandler): #自己定义一个类,继承BaseRequestHandler类
3 def handle(self): #聊天的逻辑都在handle方法里
4 print('服务端已启动....')
5 while True:
6 conn = self.request #通过它拿到客户端的socket对象
7 while True:
8 client_data = conn.recv(1024)
9 print(str(client_data,'utf8'))
10 conn.sendall(client_data)
11 conn.close()
12 if __name__ == '__main__':
13 server = socketserver.ThreadingTCPServer(('127.0.0.1',8008),MyServer) #创建ThreadingTCPServer类的对象
14 server.serve_forever()
1.创建server对象的过程封装了:服务端socket对象的创建、绑定IP和端口、设置listen等工作
2.serve_forever()方法封装了:(1)启动了包含聊天逻辑的handle方法
(2)启动了创建多线程和多进程的程序,实现并发