[Guido about ways to cleanup cyclic garbage] FYI, I'm using a special protocol for disposing of cyclic garbage: the __cleanup__ protocol. The purpose of this call is probably similar to Neil's tp_clear: it is intended to let objects break possible cycles in their own storage scope, e.g. instances can delete instance variables which they know can cause cyclic garbage. The idea is simple: give all power to the objects rather than try to solve everything with one magical master plan. The mxProxy package has details on the protocol. The __cleanup__ method is called by the Proxy when the Proxy is about to be deleted. If all references to an object go through the Proxy, the __cleanup__ method call can easily break cycles to have the refcount reach zero in which case __del__ is called. Since the object knows about this scheme it can take precautions to make sure that __del__ still works after __cleanup__ was called. Anyway, just a thought... there are probably many ways to do all this. -- Marc-Andre Lemburg ______________________________________________________________________ Business: http://www.lemburg.com/ Python Pages: http://www.lemburg.com/python/
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4