zoukankan      html  css  js  c++  java
  • Python2 socket 多线程并发 ThreadingTCPServer Demo

    # -*- coding:utf-8 -*-
    
    from SocketServer import TCPServer, StreamRequestHandler
    import traceback
    
    
    class MyStreamRequestHandlerr(StreamRequestHandler):
        """
        #继承StreamRequestHandler,并重写handle方法
        #(StreamRequestHandler继承自BaseRequestHandler)
        """
    
        def handle(self):
            while True:
                # 客户端主动断开连接时,self.rfile.readline()会抛出异常
                try:
                    # self.rfile类型是socket._fileobject,读写模式是"rb",方法有
                    # read,readline,readlines,write(data),writelines(list),close,flush
                    data = self.rfile.readline().strip()
                    print "receive from (%r):%r" % (self.client_address, data)
    
                    # self.wfile类型是socket._fileobject,读写模式是"wb"
                    self.wfile.write(data.upper()+'
    ')
                except:
                    traceback.print_exc()
                    break
    
    
    if __name__ == "__main__":
        host = "192.168.1.103"  # 主机名,可以是ip,像localhost的主机名,或""
        port = 8091  # 端口
        addr = (host, port)
    
        server = TCPServer(addr, MyStreamRequestHandlerr)
        server.serve_forever()
    
  • 相关阅读:
    request和response使用
    oracle_to_char
    oracl_LTRIM_RITRIM
    convert
    jdbc
    oracle_trunc
    [python]glob模块中的glob()函数为什么返回空列表??
    win10 anaconda+tensorflow+keras
    Golang学习:sublime text3配置golang环境
    2018/12/05学习笔记
  • 原文地址:https://www.cnblogs.com/Mysterious/p/7507314.html
Copyright © 2011-2022 走看看