Java 处理2.0b8/处理图形对象和内存管理
我正在制作一个草图,它使用一些PGraphics对象作为缓冲区,我用image()方法在屏幕上绘制 我的问题是,我注意到一个巨大的内存泄漏,99%是由于缓冲区没有被正确地破坏 有没有办法摆脱这些对象以释放一些内存?我查看了旧GLGS库的文档,并尝试了dispose()方法,但似乎没有任何效果。在post-in-processing论坛中查看,直到2.0b6版本,PImages才出现漏洞。他们建议在那里进行黑客攻击Java 处理2.0b8/处理图形对象和内存管理,java,opengl,processing,pgraphics,Java,Opengl,Processing,Pgraphics,我正在制作一个草图,它使用一些PGraphics对象作为缓冲区,我用image()方法在屏幕上绘制 我的问题是,我注意到一个巨大的内存泄漏,99%是由于缓冲区没有被正确地破坏 有没有办法摆脱这些对象以释放一些内存?我查看了旧GLGS库的文档,并尝试了dispose()方法,但似乎没有任何效果。在post-in-processing论坛中查看,直到2.0b6版本,PImages才出现漏洞。他们建议在那里进行黑客攻击 所以,在处理论坛上发布之后,感谢@v.k.answer,我发现我的问题并不是因为错
所以,在处理论坛上发布之后,感谢@v.k.answer,我发现我的问题并不是因为错误处理了PGraphics对象造成的 有一个关于它的内存泄漏,但它已在2.0b6版中修复
因此,如果您有内存泄漏,并且您认为这是PGraphics错误,请更新到2.0b8或更好地查看您的代码。thx非常感谢您的回复,但不幸的是,这并不能解决我的问题,即使这显然是相关的…:(在论坛上发布后,我发现您建议的修复与以前版本的处理相关,而不是我在标题中详述的版本。我为其他人写了一个答案。无论如何,感谢您的支持:)很高兴您找到了答案。我用正确的beta版本编辑了上面的文章。谢谢你指出这一点。
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));
}