python socketserver实现tcp多线程链接最简单模板

PYTHON socketserver基础使用

socketserver tcp

import socketserver

class Myserver(socketserver.BaseRequestHandler):
    def handle(self):
        try:
            self.request.sendall('成功连接ftp服务器'.encode('utf8'))
            while True:
                    data = self.request.recv(1024)
                    print(self.client_address, ';', data.decode('utf8'))
                    self.request.sendall(b'hi')
        except :
            return

if __name__ == "__main__":
    socketserver.TCPServer.allow_reuse_address = True
    server = socketserver.ThreadingTCPServer(("127.0.0.1", 9998), Myftppserver)
    server.serve_forever()

代码流程

1.首先定义一个类,去继承socketserver.BaseRequestHandler。
2.使用socketserver.ThreadingTCPServer()生成实例,参数1为套接字(ip,port),参数2为刚才定义的类。
3.执行serve_forever()开始监听。

执行过程

在执行serve_forever()后,会一直监听ThreadingTCPServer()时绑定的端口,每当有一个连接进来,就会实例化Myserver
类,同时会执行这个类里的handle方法。
也就是每一个连接进来,执行的所有代码都可写在handle方法下。

此为最简单使用方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值