0

我正在__del__()Python 对象的析构函数中进行一些处理,如果程序通过异常退出,我不希望发生这种情况。有没有办法检查__del__()我是否处于正常退出或异常展开的中间?

或者有什么方法可以检查atexit函数中的相同条件吗?

4

1 回答 1

2

不要__del__为此使用 a。甚至不能保证调用该__del__钩子:

不能保证__del__()为解释器退出时仍然存在的对象调用方法。

相反,使用上下文管理器管理缓存,并且仅在使用设置为 调用__exit__()方法时将缓存标记为可重用。exc_typeNone

于 2013-08-12T16:03:10.207 回答