【发布时间】:2012-09-26 05:18:29
【问题描述】:
可能重复:
When is Dispose necessary?
.Net and Bitmap not automatically disposed by GC when there is no memory left
经过一轮拉扯后,我终于发现我的罪魁祸首是在调整大小操作中重新分配了位图对象。重新分配足够多后,系统退出尝试绘制位图(未调用 Paint 事件)并且变得非常生涩。
在分配新的位图之前处理旧位图修复它。
这表示一定有一些基础资源(不仅仅是内存)被孤立那些旧位图所用尽。
我认为位图只是我可以留给垃圾收集器的内存块。怎么回事??
【问题讨论】:
-
问题是:是否涉及
IDisposable接口?如果是这样,正确的代码必须在其上调用Dispose,正如它所说的“嘿,在保证运行终结器之前,此实现可能需要也可能不需要及时清理某些东西”。 -
@verdesmarald:我想我的搜索措辞有误。