任何人都可以想到一种在代码中找到类实例的方法,以便它可以使用吗? (没有它的参考开始)
class FindMeClass
{
internal FindMeClass()
{
Console.WriteLine("FindMeClass()");
}
~FindMeClass()
{
Console.WriteLine("~FindMeClass()");
}
}
static void FindMe()
{
new FindMeClass();
// Find the class here
GC.Collect();
GC.WaitForPendingFinalizers();
}
答案 0 :(得分:0)
在对象的析构函数中,您可以在全局静态对象中对它进行引用。
这样你就可以恢复对象,它又可以再次访问,不会被垃圾回收。
不要忘记重新注册垃圾回收对象。请参阅:Usages of object resurrection
一般情况下:这是浪费精力,只需保留对您不想删除的对象的引用。