我有这个“Linked Web”(?)数据结构 IE。每个对象都有一堆对其他对象的引用。
所以我写了一个方法,应该通过删除对它的所有引用来“删除”传递的对象。
我需要对其进行测试,并确保在我运行该方法后,我要删除的特定对象未被任何其他对象引用
我该怎么做?
一个想法是强制垃圾收集然后运行我的删除对象方法,然后强制另一个 GC 查看它是否找到了对象。
如果它找到一个要删除的对象,那么我会假设我的方法有效 但如果它没有发现任何可收集的东西,那么我会假设有什么东西在引用它并且必须堵住那个漏洞
这可能吗?怎么办?
谢谢, 瑞安
最佳答案
您可以通过 WeakReference
跟踪每个对象并在垃圾回收后检查 IsAlive
属性。
关于c# - 有没有办法返回所有未引用的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5061735/