[Python-Dev] Re: Object finalization for local (ie function)scopes
"Martin v. Löwis"
martin at v.loewis.de
Sun Jun 13 04:02:13 EDT 2004
Oliver Schoenborn wrote:
> Those objects that have "registered" themselves to the "cleaner" require
> finally-ization. Hence, if no objects registered themselves, there is only
> the overhead of an empty finally. The implementation details can worry about
> how registration takes place, and who does the cleanup. In scope.py,
> "registration" is handled by derivation from class NeedsFinalization --
> which I can eventually rename so please let's not get stuck on terminology
> at this stage. The cleaner is a function called ScopeGuardian.
I'm still uncertain, though, as to what objects precisely should get
the cleanup calls: *All* objects that have registered with the cleaner,
or only some of them?
If all objects: what if nested function calls each have to-clean
objects, and only the inner function returns? Why is it then useful
to also clean objects that where created in an outer function?
If only some objects: which ones?
More information about the Python-Dev