Circular references not being cleaned up by Py_Finalize()

blackpawn pharmapsychotic at gmail.com
Tue Mar 25 20:32:17 CET 2008


I've been trying to get garbage collection of circular references to
work properly with no success then I noticed the documentation stating
that it just doesn't:

>From documentation on Py_Finalize() -> "Memory tied up in circular
references between objects is not freed. "

I copy pasted the Noddy example for circular reference breaking from
the documentation and set a break point in its Noddy_dealloc function
and sure enough even that simple example doesn't work properly.

So what's the deal here?  :)  I want all objects to be freed when I
shut down and their destruction functions to be properly called.  Is
there really no way to make this happen?

Many thanks for any insights,
Jim



More information about the Python-list mailing list