prefork.py 文件源码

python
阅读 30 收藏 0 点赞 0 评论 0

项目:SoCFoundationFlow 作者: mattaw 项目源码 文件源码
def create_server(conn, cls):
    # child processes do not need the key, so we remove it from the OS environment
    global SHARED_KEY
    SHARED_KEY = os.environ['SHARED_KEY']
    os.environ['SHARED_KEY'] = ''

    ppid = int(os.environ['PREFORKPID'])
    def reap():
        if os.sep != '/':
            os.waitpid(ppid, 0)
        else:
            while 1:
                try:
                    os.kill(ppid, 0)
                except OSError:
                    break
                else:
                    time.sleep(1)
        os.kill(os.getpid(), signal.SIGKILL)
    t = threading.Thread(target=reap)
    t.setDaemon(True)
    t.start()

    server = SocketServer.TCPServer(conn, req)
    print(server.server_address[1])
    sys.stdout.flush()
    #server.timeout = 6000 # seconds
    server.socket.setsockopt(socket.IPPROTO_TCP, socket.TCP_NODELAY, 1)
    try:
        server.serve_forever(poll_interval=0.001)
    except KeyboardInterrupt:
        pass
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号