繁体   English   中英

C#GC代表?

[英]C# GC delegates?

我怎么知道GC何时开始? 我可以给GC的一些代表,例如“ OnStart”和“ OnEnd”吗?

你不能 实现IDisposable时,您的类上只有Dispose方法。 这是为了释放资源。 当对象“销毁”时调用它。 垃圾收集本身就是一个黑匣子

有关更多信息,请访问: http : //msdn.microsoft.com/zh-cn/library/system.idisposable.aspx

在.NET 4中,您可以使用垃圾收集通知

如果您真的想在发生GC时进行操作,则可以创建一个具有终结器的对象,并立即将对它的引用设置为null。 这样,该对象如果仍为第0代,则很可能在下次GC运行时进行垃圾回收。 GC完成后,您的终结器可能会被调用,因此您知道发生了GC。

请注意,我不建议这样做,并且不能保证该行为。

如果您只是想知道出于好奇和教育目的何时运行GC,可以使用clr内存分析器工具,该工具通常向您显示GC发生的时间和频率以及收集哪些对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM