C# 如何在C中保存一个不干扰垃圾收集的对象列表?

C# 如何在C中保存一个不干扰垃圾收集的对象列表?,c#,garbage-collection,C#,Garbage Collection,我试图在C中维护一个Manager类中的对象列表。基本上,一个consumer类向Manager类注册,Manager类维护一个对consumer类的引用集合。现在,就我对GC的有限理解而言,保持对consumer类的引用将防止consumer类被垃圾收集 我所追求的是一种维护对manager类中的类的引用的方法,该类可能会或可能不会以可确定的方式指向consumer类,这取决于它是否已被垃圾收集。在c中如何实现这一点?您可以使用该类创建对对象的弱引用。也就是说,只要对象仅由强引用引用,它就将成

我试图在C中维护一个Manager类中的对象列表。基本上,一个consumer类向Manager类注册,Manager类维护一个对consumer类的引用集合。现在,就我对GC的有限理解而言,保持对consumer类的引用将防止consumer类被垃圾收集

我所追求的是一种维护对manager类中的类的引用的方法,该类可能会或可能不会以可确定的方式指向consumer类,这取决于它是否已被垃圾收集。在c中如何实现这一点?

您可以使用该类创建对对象的弱引用。也就是说,只要对象仅由强引用引用,它就将成为集合的候选对象


如果没有强引用只引用弱引用,则垃圾回收器会认为它是垃圾收集的候选。

您正在查找。

谢谢。这对阿森纳来说是一个非常有用的补充。谢谢大家!