位图是否是某种系统资源?

时间:2012-09-26 05:18:29

标签: c# image

  

可能重复:
  When is Dispose necessary?
  .Net and Bitmap not automatically disposed by GC when there is no memory left

经过一轮拉毛后,我终于发现我的罪魁祸首是在调整大小操作中重新分配Bitmap对象。在足够的重新分配后,系统退出尝试绘制位图(未调用Paint事件)并且非常生涩。

在分配新位图之前处理旧位图会修复它。

这表明必须有一些潜在的资源(除了简单的内存)被孤立的那些旧位图用完。

我认为位图只是我可以留给垃圾收集器的大块内存。发生什么事了?

1 个答案:

答案 0 :(得分:4)

MSDN声明Bitmap封装了一个GDI +对象。所以我希望你不必再调用Dispose()来释放这些系统资源。

编辑:位图是Image的子类,应用以下MSDN语句

  

在释放对图像的最后一个引用之前,请始终调用Dispose。否则,在垃圾收集器调用Image对象的Finalize方法之前,不会释放它正在使用的资源。