0

我在 Windows 窗体中创建了一个小游戏,并使用属性背景图像。我创建新的位图并将其提供给表单。问题是,该程序使用了太多的内存——每次它创建新的位图的过程都会增加更多的 2k!过了一会儿,我猜垃圾收集器将它们全部删除(内存立即下降),但它可以达到 800k,这对我的小游戏来说太荒谬了。在我将位图放到表单属性之后,我没有任何对位图的引用,即使我将位图设置为空,问题也没有解决。我能做些什么来解决这个内存问题?谢谢!

4

1 回答 1

2

在设置新图像之前获取对前一个图像的引用,以便您可以处理它:

Image oldImage = this.BackgroundImage;
this.BackgroundImage = newImage;
oldImage.Dispose();
于 2012-05-17T20:32:08.523 回答