Changes by Jesús Cea Avión j...@jcea.es:
--
nosy: +jcea
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue12075
___
___
Python-bugs-list mailing list
kai zhu kai...@ugcs.caltech.edu added the comment:
explicit gc.collect() doesn't seem to fix the leak in my application.
my current fix is to not re-instantiate the class attribute (which cost ~7mb)
during reload instead reference one created earlier.
i haven't pinpointed y, but i suspect its
New submission from kai zhu kai...@ugcs.caltech.edu:
i'm using the latest debian unstable python3.2 build on colinux (2011, may, 14)
## leak.py
## import imp, leak; imp.reload(leak)
## will leak ~2.5mb per reload
## on i386 debian unstable machine (according to top).
## in my real world app
Ezio Melotti ezio.melo...@gmail.com added the comment:
I think this has to do with class attributes and reload():
wolf@hp:~/dev/py/py3k$ cat leak.py
class Foo: pass
Foo.l = list(range(65535))
wolf@hp:~/dev/py/py3k$ ./python
Python 3.3a0 (default:4b122cac7ac5+, May 14 2011, 10:01:13)
[GCC
Amaury Forgeot d'Arc amaur...@gmail.com added the comment:
It's simply because all classes form a cycle (Foo - Foo.__mro__ - Foo)
A class and class attributes can only be freed with gc.collect().
Did you disable the garbage collector?
--
nosy: +amaury.forgeotdarc