Alan Franzoni <[EMAIL PROTECTED]> writes: > I have a serious "leak" issue; even though I clear all those sets > and I delete all the references I can have to the current namespace, > memory is not freed.
Maybe the memory is freed (marked as available for further use by Python), just not released to the operating system.[1] To test against that, try to allocate more Python structures and see if they reuse the freed memory or if they allocate even more memory. Even better, run code like this: while 1: ... populate your data structures ... clear() If this causes Python to allocate more and more memory, it means you have a real leak. If not, it means that the GC is working fine, but it's not possible to release the memory to the OS. [1] Not giving freed memory back to the system is not (necessarily) a Python bug; the same thing happens in C and is a consequence of managed memory being assigned to the process as a contiguous block. -- http://mail.python.org/mailman/listinfo/python-list