码迷,mamicode.com
首页 > 其他好文 > 详细

socketserver模块

时间:2019-10-22 13:06:42      阅读:83      评论:0      收藏:0      [点我收藏+]

标签:utf-8   int   div   add   等价   固定   imp   连接   mys   

模块:socketserver模块(内置模块)(并发原理)
      socketserver这个模块主要是为了解决:TCP协议中,服务器不能同时连接多个客户端的问题
      而继承的这个类中的self.request等价于原来socket中的conn(conn,addr=sk.accept())      
#server层(固定形式)
import socketserver
class MySocket(socketserver.BaseRequestHandler):
    def handle(self):# 这个方法的名字是固定的,必须是这个名字
        # 收发的逻辑代码
        # self.request == conn
        msg = self.request.recv(1024).decode(utf-8)
        print(msg)
        self.request.send(msg.upper().encode(utf-8))
        
server = socketserver.TCPServer((127.0.0.1,8080),MySocket)# 固定的
server.serve_forever()# 开启一个永久性的服务


#client层
import socket
sk = socket.socket()
sk.connect((127.0.0.1,8080))

msg_s = input(>>>)
sk.send(msg_s.encode(utf-8))

print(sk.recv(1024).decode(utf-8))

sk.close()

 

socketserver模块

标签:utf-8   int   div   add   等价   固定   imp   连接   mys   

原文地址:https://www.cnblogs.com/god-for-speed/p/11719062.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!