相关疑难解决方法(0)

循环引用导致内存泄漏?

我试图在Windows窗体应用程序中运行内存泄漏.我现在正在查看包含多个嵌入表单的表单.让我担心的是,子构造在构造函数中引用父窗体,并将其保存在私有成员字段中.所以在我看来,垃圾收集时间到了:

Parent通过控件集合引用子表单(子表单嵌入在那里).子表单不是GC'd.

子表单通过私有成员字段引用父表单.父表单不是GC'd.

这是否准确了解垃圾收集器将如何评估这种情况?有什么办法可以"证明"它用于测试目的吗?

.net memory memory-leaks memory-management circular-dependency

35
推荐指数
4
解决办法
1万
查看次数

垃圾收集器在这种情况下会做什么?

有两种情况我试图了解GC将如何行动

1-有两个对象 - object1和object2 object1对object2有引用,object2对object1有引用现在,这两个对象都没有被使用,GC可以收集它们.

会发生什么?GC会跳过这个系列吗??

2-同样的问题但我们有4个(或n个)对象相互参照.GC会对此案件做什么???

.net c# clr garbage-collection c#-4.0

1
推荐指数
1
解决办法
172
查看次数