如何在多处理中运行python flask而无需等待另一个进程关闭

时间:2017-11-19 07:02:17

标签: python python-2.7

我运行另一个gtk窗口来显示我的应用程序,同时我想运行Flask.run(主机:'0.0.0.0')。当我关闭运行我的应用程序的gtk.window时,Flask仍在处理。有人可以帮忙吗?

这是代码:

import multiprocessing
import opx
import app

def worker(file):
    if file == 'opx':
    opx.main()
    else :
    app.apx.run(host='0.0.0.0') 

if __name__ == '__main__':
    files = ["opx","app.py"]
    for i in files:
        p = multiprocessing.Process(target=worker(i))
        p.start()
    p.join()

1 个答案:

答案 0 :(得分:1)

这里有几种组合:

from flask import Flask
from tornado.wsgi import WSGIContainer
from tornado.httpserver import HTTPServer
from tornado.ioloop import IOLoop

app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

if __name__ == "__main__":
    http_server = HTTPServer(WSGIContainer(app))
    http_server.listen(8000)
    IOLoop.instance().start()

Flask with Gevent

Flask with Tornado

在提问之前你应该做更多的研究。 (因为反复出现问题会导致社区混乱)