私はPythonでのWeb開発に不慣れで、Webアプリケーションを開始するためにFlaskを選択しました。アプリケーションをシャットダウンする前に解放できるリソースがいくつかありますが、クリーンアップコードを配置する場所が見つかりませんでした。Flaskは、リクエスト処理の前後にコールバックを登録するためのデコレータを提供しますbefore_request
。teardown_request
アプリケーションが停止する前に呼び出されるコールバックを登録するのに似たものはありますか?ありがとう。
質問する
3919 次
1 に答える
3
このatexit
モジュールを使用すると、プログラム終了コールバックを登録できます。ただし、アプリケーションがシグナルによって終了した場合、そのコールバックは呼び出されません。これらのケースを処理する必要がある場合は、同じコールバックをsignal
モジュールに登録できます (たとえば、SIGTERM シグナルを処理したい場合があります)。
何をクリーンアップしたいのか正確に誤解しているかもしれませんが、ファイル ハンドルやデータベース接続などのリソースはインタプリタのシャットダウン時にいずれにせよ閉じられるので、それらについて心配する必要はありません。
于 2012-05-29T11:22:47.133 に答える