Hi,

Am Mittwoch, den 16.11.2005, 09:06 +0000 schrieb Loris Caren:
> On Tuesday 15 November 2005 21:06, you wrote:
> > I'm doing a large number of calls to
> > p = gtk.gdk.pixbuf_new_from_file(f)
> > ...
> > del p
> > and am finding that the process consumes more and more memory as it
> > goes on.  Should I expect the del to free up the memory used by the
> > loaded image, or is there some kind of 'close' call I need to be
> > invoking first?
> Think I've found the answer to this one in the archives. Various other 
> people have reported a similar bug, but 
> http://article.gmane.org/gmane.comp.gnome.gtk+.python/2315/match=pixbuf
> suggests it's an issue with the garbage collector. Adding an explicit 
> gc.collect() after my del stops my memory usage wandering off the 
> scale.  This looks like a generic issue for anyone manipulating lots 
> of large objects, and an easy trap for those that thought that python 
> 'just did' memory allocation and one never need bother about it.

I'm also disturbed by this and I wonder if it is possible to have python
memorize the "virtual size" aswell, and then garbage collect using the
"virtual size" instead of the (real) size of the handle.

I think this should be brought to the attention of the developers of
python, since they should know best how to proceed.

Note that the "handle size < data size" problem would be a quite
universal problem (thinking about any python C extensions here)

cheers,
   Danny


_______________________________________________
pygtk mailing list   pygtk@daa.com.au
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/

Reply via email to