加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C#为什么在我们已经有终结器时处理

发布时间:2020-12-16 00:09:59 所属栏目:百科 来源:网络整理
导读:参见英文答案 Finalize vs Dispose????????????????????????????????????13个 我一直听到有关在终结器和Dispose()方法中放置代码来处理非托管资源的建议.我不明白的是,因为在GC发生时调用终结器所以我们可以在技术上假设它一直被调用.在那种情况下,为什么还
参见英文答案 > Finalize vs Dispose????????????????????????????????????13个
我一直听到有关在终结器和Dispose()方法中放置代码来处理非托管资源的建议.我不明白的是,因为在GC发生时调用终结器所以我们可以在技术上假设它一直被调用.在那种情况下,为什么还要处理一个物体呢?我错过了什么吗?

解决方法

In that case why bother disposing an object?

因为您无法控制终结器的运行时间. GC可能会频繁运行,而单独依赖终结器的程序可能因资源不足(文件句柄,数据库连接)而崩溃.

最佳实践(一次性模式)使用终结器作为备份计划,通常执行终结器被认为是需要修复的错误.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读