社区
C#
帖子详情
C#.net 里的 GC.SuppressFinalize(this); 是怎么一个工作原理。
Jave.Lin
2010-05-08 11:02:09
如题。
调用了GC.SuppressFinalize(this)
为啥该对象还没为null?
难道非要自己来个等于null才行?(this=null;)
...全文
555
5
打赏
收藏
C#.net 里的 GC.SuppressFinalize(this); 是怎么一个工作原理。
如题。 调用了GC.SuppressFinalize(this) 为啥该对象还没为null? 难道非要自己来个等于null才行?(this=null;)
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ColaCoding
2011-10-12
打赏
举报
回复
This object will be cleaned up by the Dispose method.
Therefore, you should call GC.SupressFinalize to
take this object off the finalization queue
and prevent finalization code for this object
from executing a second time.
Jave.Lin
2010-05-08
打赏
举报
回复
[Quote=引用 1 楼 wiki14 的回复:]
http://msdn.microsoft.com/zh-cn/library/ms182269(VS.90).aspx
[/Quote]
MSDN里的早看了,但没有说明,GC.SuppressFinalize(this); 倒底有啥用。
mayonglong
2010-05-08
打赏
举报
回复
不懂,帮顶~
wiki14
2010-05-08
打赏
举报
回复
http://msdn.microsoft.com/zh-cn/library/ms182269(VS.90).aspx
lyso2008
2010-05-08
打赏
举报
回复
GC.SuppressFinalize(this)的作用:
实现IDisposable接口的对象可以从IDisposable.Dispose方法调用此方法(GC.SuppressFinalize(this)),以防止垃圾回收器对不需要终止的对象调用 Object.Finalize。
从
GC
的
Supp
re
ss
Final
ize
方法带你深刻认识
Final
ize
底层运行机制
本文详细探讨了
C#
中的
GC
.
Supp
re
ss
Final
ize
方法,解释了其在资源管理中的作用,尤其是在处理非托管资源时如何避免重复释放的问题。通过分析
.NET
框架中MySqlConnection和MySqlCommand的Dispose方法,揭示了
Supp
re
ss
Final
ize
的必要性和
工作原理
。
final
ize
方法_从
GC
的
Supp
re
ss
Final
ize
方法带你深刻认识
Final
ize
底层运行机制
本文探讨了
.NET
中
GC
.
Supp
re
ss
Final
ize
的作用,解释了为何在 Dispose 方法中使用它,以及析构函数的
工作原理
。通过实例分析,揭示了如何避免资源泄露和理解非托管资源管理的关键概念。
C#
析构器真相:为何它不是资源清理方案而是
GC
性能杀手
本文深入剖析
C#
析构器(终结器)的本质危害:它不保证执行、不可控时机、显著拖慢
GC
性能,导致
Final
ize
r队列积压、内存延迟释放与Stop-The-World暂停飙升。核心结论是析构器仅适用于极少数非托管资源场景,99%业务应采用IDisposable模式配合
Supp
re
ss
Final
ize
实现确定性资源释放。文章通过IL级拆解、
GC
分代影响分析、真实故障复盘(如支付网关雪崩)及可落地的三步迁移策略,系统论证析构器作为‘性能杀手’的技术根源与工程替代方案。
C#
中的
Final
ize
,Dispose,
Supp
re
ss
Final
ize
(转载)
本文详细解析了在
C#
中实现IDisposable接口的推荐模式,包括Dispose和
Final
ize
函数的区别与协同工作方式,以及如何避免资源的重复释放。同时介绍了Close函数的使用场景与建议。
从
C#
垃圾回收(
GC
)机制中挖掘性能优化方案
本文探讨了
.NET
中的垃圾回收(
GC
)机制及其对性能的影响。
GC
通过标记清扫算法回收不再使用的对象,但并非实时,可能导致内存瓶颈。介绍了IDisposable接口和using语句在资源管理中的作用,特别是对于非托管资源的释放。文章通过实例展示了如何通过 Dispose 方法和
GC
.
Supp
re
ss
Final
ize
(this) 来优化资源释放,强调了避免不必要的
GC
.Collect调用以保持性能。
C#
111,129
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章