故意把烧瓶放下

Intentionally bringing flask down

为了练习使用 supervisor 让烧瓶服务器保持活动状态,我插入了一个 sys.exit():

import sys
from flask import Flask
app = Flask(__name__)


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


if __name__ == '__main__':
    app.run()

通过 flask run 在开发中启动或通过 gunicorn app:app 在生产中启动分别产生错误

This page isn’t working
localhost didn’t send any data.
ERR_EMPTY_RESPONSE

This site can’t be reached
localhost refused to connect.
ERR_CONNECTION_REFUSED

但既不会关闭服务器,也不会自行重启。发生了什么事,我怎样才能故意关闭 Flask 服务器?

尝试使用 os._exit() 立即终止程序。 sys.exit() 引发 SystemExit 异常并且只会终止当前线程。