有没有办法检测 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