Почему приложение Flask создает два процесса? [дубликат]

этот вопрос уже есть ответ здесь:

насколько я понял, Flask должен создать поток и второй поток для запуска на нем, но я вижу, что всегда есть два процесса, а не потоки. Даже для самых простых приложение.

from flask import Flask
from flask import render_template, request, flash, session, redirect

app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello World!'

app.run(host="192.168.21.73", port=5000, debug=True)

Вы можете увидеть два процесса работает:

ps -x
5026 ttyO0    S+     0:01 /usr/bin/python ./test_flask.py
5031 ttyO0    Sl+    0:45 /usr/bin/python ./test_flask.py

что здесь происходит?

1 ответов


это потому, что вы используете dev-сервер с перегружателем. Перегружатель отслеживает файловую систему для изменений и запускает реальное приложение в другом процессе, поэтому есть два общих процесса.

вы можете отключить перегружатель, установив debug=False или use_reloader=False при вызове run.