您是否需要处置对象并将其设置为null?

您是否需要处置对象并将其设置为null?,第1张

您是否需要处置对象并将其设置为null?

当不再使用对象以及垃圾收集器认为合适时,它们将被清除。有时,您可能需要将对象设置

null
为使其超出范围(例如,不再需要其值的静态字段),但是总体上通常不需要将其设置为
null

关于处理对象,我同意@Andre。如果对象是

IDisposable
一个好主意,处理它
,当你不再需要它,尤其是如果对象使用非托管资源。不处理非托管资源将 导致内存泄漏

using
一旦程序离开
using
语句的范围,就可以使用该语句自动处置对象。

using (MyIDisposableObject obj = new MyIDisposableObject()){    // use the object here} // the object is disposed here

在功能上等效于:

MyIDisposableObject obj;try{    obj = new MyIDisposableObject();}finally{    if (obj != null)    {        ((IDisposable)obj).Dispose();    }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/zaji/5462601.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存