socketserver模块(实现并发)

socketserver模块(实现并发),第1张

概述socketserver模块(实现并发) 一、基于UDP协议实现的并发 # 服务端import socketserverclass MyServer(socketserver.BaseRequestHandler): def handle(self): # print('来啦 老弟') while True: data,sock socketserver模块(实现并发) 一、基于UDP协议实现的并发
# 服务端import socketserverclass MyServer(socketserver.BaseRequestHandler):    def handle(self):        # print('来啦 老弟')        while True:            data,sock = self.request            print(self.clIEnt_address)  # 客户端地址            print(data.decode('utf-8'))            sock.sendto(data.upper(),self.clIEnt_address)if __name__ == '__main__':    """只要有客户端连接  会自动交给自定义类中的handle方法去处理"""    server = socketserver.ThreadingUDPServer(('127.0.0.1',8080),MyServer)  # 创建一个基于UDP的对象    server.serve_forever()  # 启动该服务对象# 客户端import socketimport timeclIEnt = socket.socket(type=socket.soCK_DGRAM)server_address = ('127.0.0.1',8080)while True:    clIEnt.sendto(b'hello',server_address)    data,addr = clIEnt.recvfrom(1024)    print(data.decode('utf-8'),addr)    time.sleep(1) # 发送间隔太短的话,看不出效果
二、基于TCP协议实现的并发
# 服务端import socketserverclass MyServer(socketserver.BaseRequestHandler):    def handle(self):        # print('来啦 老弟')        while True:            data = self.request.recv(1024)            print(self.clIEnt_address)  # 客户端地址            print(data.decode('utf-8'))            self.request.send(data.upper())if __name__ == '__main__':    """只要有客户端连接  会自动交给自定义类中的handle方法去处理"""    server = socketserver.ThreadingTcpserver(('127.0.0.1',MyServer)  # 创建一个基于TCP的对象    server.serve_forever()  # 启动该服务对象    # 客户端import socketclIEnt = socket.socket()clIEnt.connect(('127.0.0.1',8080))while True:    clIEnt.send(b'hello')    data = clIEnt.recv(1024)    print(data.decode('utf-8'))
总结

以上是内存溢出为你收集整理的socketserver模块(实现并发)全部内容,希望文章能够帮你解决socketserver模块(实现并发)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1191771.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存