Python プログラムがいつ終了するかを検出する方法はありますか? 接続できるコールバックのようなものはありますか?
キャッシュを保持するクラスがあり、プログラムが終了する前にキャッシュをディスクに書き出したいと考えています。それができれば、最初に使用するときにディスクからロードして、永続的なキャッシュを持つことができます。
キャッシュを保存するためにユーザーが何もする必要がないように、自動化したいので、コールバックタイプのものを探しています。
Python プログラムがいつ終了するかを検出する方法はありますか? 接続できるコールバックのようなものはありますか?
キャッシュを保持するクラスがあり、プログラムが終了する前にキャッシュをディスクに書き出したいと考えています。それができれば、最初に使用するときにディスクからロードして、永続的なキャッシュを持つことができます。
キャッシュを保存するためにユーザーが何もする必要がないように、自動化したいので、コールバックタイプのものを探しています。
関数を使用するatexit.register(some_function)
か、単にで装飾することができます@atexit.register
。インタプリタが終了すると呼び出されます。
例:
import atexit
@atexit.register
def save_cache():
print 'save cache'
また
import atexit
def save_cache():
print 'save cache'
atexit.register(save_cache)
import atexit
@atexit.register
def writecache():
# etc