pyGtk pixbuf的"内存泄露"
使用pixbuf似乎很容易造成"内存泄露",尤其是在使用pixbuf的zoom功能scale_simple时,当放大图像时,内存被快速耗尽,即使再将图像缩小回去,内存占用也不降低,似乎是"内存泄露",找到一个FAQ的解释说这和Python的内存回收机制有关。解决方法是手动调用gc.collect(),我测试了一下,确实有效,参考代码是:
pb = gtk.gdk.pixbuf_new_from_file (image_path)FAQ的链接在这里: http://www.async.com.br/faq/pygtk/index.py?req=show&file=faq08.004.htp
pb = pb.scale_simple(thumb_width, thumb_height, gtk.gdk.INTERP_BILINEAR)
thumb_list_model.set_value(thumb_list_model.append(None), 0, pb)
del pb
gc.collect()

0 Comments:
发表评论
<< Home