【发布时间】:2010-09-28 03:19:53
【问题描述】:
我保留一个事务缓存,以便在水印或对象终结时刷新(到持久存储)。由于__del__ 在每个对象上都是no longer guaranteed to be called,因此将类似函数(或__del__ 本身)挂钩到atexit.register(在初始化期间)是否合适?
如果我没记错的话,这个将导致方法绑定到的对象一直挂起,直到程序终止。这可能不是问题,但也许有更优雅的解决方案?
注意:我知道使用__del__ 是不理想的,因为it can cause uncatchable exceptions,但我想不出另一种方法来做到这一点,除非在我的程序中一直级联finalize() 调用。蒂亚!
【问题讨论】:
标签: python buffer destructor finalizer