首页 > 解决方案 > dispose方法c#类,常见注释“直到垃圾收集器才被释放”

问题描述

在 c# 的一些一次性类中,有文档说明:

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

其中 XXXX 是例如SemaphoreSlimManualResetEventSlim。我从这个注释中了解到,如果您不调用 dispose(否则)XXXX 正在使用的资源(包括非托管对象)最终将被 GC 释放。

我的理解正确吗?因为如果它意味着至少对于这些类,实际上不需要对它们调用 Dispose()。

标签: c#memory-leaksgarbage-collectiondisposeidisposable

解决方案


推荐阅读