永发信息网

c#的垃圾对象何时被回收

答案:1  悬赏:40  手机版
解决时间 2021-03-26 12:11
  • 提问者网友:趣果有间
  • 2021-03-26 02:50
c#的垃圾对象何时被回收
最佳答案
  • 五星知识达人网友:愁杀梦里人
  • 2021-03-26 04:07
你的问题非常深入,涉及到c#的GC(垃圾回收器)。

首先明确,c#的对象都在托管堆上。
大体上,所有的GC实现(包括java等其他带GC的语言)都是定时扫描一次,找到引用计数为0的对象,清理内存。
当然具体上C#使用的是一种改进的叫做引用跟踪的算法去找到垃圾对象的。

我们无法明确的得知垃圾何时被回收,我们也不应该依赖于此。
对于深入的了解,推荐阅读 Net CLR via C# 中文版 第21章,托管堆和垃圾回收

百度可以搜到。
你有兴趣也可以阅读一下该书的其它章节。是一本c#开发中十分重要的进阶书籍。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯