处理2.0b8 /处理PGraphics对象和内存管理

zin 发布于 2019-03-15 java 最后更新 2019-03-15 14:08 1 浏览

我正在研究一个使用一些PGraphics对象作为缓冲区的草图,并使用image()方法在屏幕上绘制。 我的问题是,我注意到一个巨大的内存泄漏,99%由于这个缓冲区没有被正确销毁。 有没有办法摆脱这些对象来释放一些内存?我查看了旧的GLGS库的文档,并试着用dispose()方法,但它看起来没有任何效果。

已邀请:

mnam

赞同来自:

因此,在处理论坛发帖后,感谢@ v.k。回答,我发现我的问题不是由错误处理PGraphics对象造成的。 有关于它的内存泄漏,但它已在版本2.0b6中修复。 因此,如果您有内存泄漏并且您认为它是PGraphics错误,请更新到2.0b8或更好地查看代码。

zvelit

赞同来自:

在处理论坛中查看this帖子,看起来直到2.0b6才有PImages泄漏。他们建议在那里进行黑客攻击......

void draw()
{
  PImage img = createImage(width, height, RGB);
  image(img, 0, 0);
  g.removeCache(img);// this is avoiding the leak
  println(frameCount + " " + g.getCache(img));
}