是否需要释放位图局部变量?
Is it necessary to release bitmap local variable?
我调用了以下方法。我在其中创建了一个位图局部变量,然后将其作为参数传递给自定义 class 的实例。我的疑问是:我必须处理位图对象吗?
public void AddSnapshot(int width, int height)
{
Bitmap bmp = null;
try
{
bmp = new Bitmap(width, height);
MyClass mc = new MyClass(bmp);
}
catch (Exception)
{
if (bmp != null) bmp.Dispose();
}
}
重新访问 MSDN,不仅在这种异常情况下你应该处理它。
"Always call Dispose before you release your last reference to the
Image. Otherwise, the resources it is using will not be freed until
the garbage collector calls the Image object's Finalize method."
正如你通过:
bitmap.Dispose();
关于:https://docs.microsoft.com/de-de/dotnet/api/system.drawing.bitmap?view=netframework-4.7.2
Bitmap 派生自 Image,MSDN 说你应该在 Images 上调用 Dispose()
。
我调用了以下方法。我在其中创建了一个位图局部变量,然后将其作为参数传递给自定义 class 的实例。我的疑问是:我必须处理位图对象吗?
public void AddSnapshot(int width, int height)
{
Bitmap bmp = null;
try
{
bmp = new Bitmap(width, height);
MyClass mc = new MyClass(bmp);
}
catch (Exception)
{
if (bmp != null) bmp.Dispose();
}
}
重新访问 MSDN,不仅在这种异常情况下你应该处理它。
"Always call Dispose before you release your last reference to the Image. Otherwise, the resources it is using will not be freed until the garbage collector calls the Image object's Finalize method."
正如你通过:
bitmap.Dispose();
关于:https://docs.microsoft.com/de-de/dotnet/api/system.drawing.bitmap?view=netframework-4.7.2
Bitmap 派生自 Image,MSDN 说你应该在 Images 上调用 Dispose()
。