我正在查找Windows窗体应用程序中的内存泄漏问题。现在我正在查看一个包含多个嵌入式窗体的窗体。令我担忧的是,子窗体在构造函数中会获取父窗体的引用,并将其保存在私有成员字段中。因此,在垃圾回收时间到来时:
- 父窗体通过控件集合(子窗体嵌入其中)持有对子窗体的引用。子窗体无法被垃圾回收。 - 子窗体通过私有成员字段持有对父窗体的引用。父窗体无法被垃圾回收。
这是我对垃圾回收器如何评估这种情况的准确理解吗?有没有任何方法可以进行“证明”以进行测试?
- 父窗体通过控件集合(子窗体嵌入其中)持有对子窗体的引用。子窗体无法被垃圾回收。 - 子窗体通过私有成员字段持有对父窗体的引用。父窗体无法被垃圾回收。
这是我对垃圾回收器如何评估这种情况的准确理解吗?有没有任何方法可以进行“证明”以进行测试?