CLR 如何找到实现 IDisposable 的类?

发布于 2024-11-28 19:34:39 字数 178 浏览 0 评论 0原文

我需要一些澄清...

  1. ... CLR(更具体地说,垃圾收集器)如何找到实现 IDisposable 接口的类;

  2. …它如何调用Dispose方法(所有实现了IDisposable接口的类)来释放内存?

I need some clarification on…

  1. … how the CLR — more specifically, the garbage collector — finds the classes which implement the IDisposable interface; and

  2. … how it calls the Dispose method (of all classes which implement the IDisposable interface) to free up memory?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

泡沫很甜 2024-12-05 19:34:39

CLR 不会调用 Dispose(),这由用户代码直接调用或通过使用 using 语句调用。但是,CLR 将调用终结器< /a>,尽管这没有得到保证。

The CLR does not call Dispose(), this is up to user code to call either directly or through the use of the using statement. The CLR will however call finalizers, although this is not gauranteed.

忆梦 2024-12-05 19:34:39

Dispose 不会自动调用。当您编写 using 或直接调用 Dispose 时,编译器会生成对 Dispose 的调用。

Dispose is not called automatically. The compiler generates calls to Dispose when you write using, or call Dispose directly.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文