8

私はPythonでのWeb開発に不慣れで、Webアプリケーションを開始するためにFlaskを選択しました。アプリケーションをシャットダウンする前に解放できるリソースがいくつかありますが、クリーンアップコードを配置する場所が見つかりませんでした。Flaskは、リクエスト処理の前後にコールバックを登録するためのデコレータを提供しますbefore_requestteardown_requestアプリケーションが停止する前に呼び出されるコールバックを登録するのに似たものはありますか?ありがとう。

4

1 に答える 1

3

このatexitモジュールを使用すると、プログラム終了コールバックを登録できます。ただし、アプリケーションがシグナルによって終了した場合、そのコールバックは呼び出されません。これらのケースを処理する必要がある場合は、同じコールバックをsignalモジュールに登録できます (たとえば、SIGTERM シグナルを処理したい場合があります)。

何をクリーンアップしたいのか正確に誤解しているかもしれませんが、ファイル ハンドルやデータベース接続などのリソースはインタプリタのシャットダウン時にいずれにせよ閉じられるので、それらについて心配する必要はありません。

于 2012-05-29T11:22:47.133 に答える