代码之家  ›  专栏  ›  技术社区  ›  Omer Raviv

是否可以实现GC.GetAliveInstancesOf<T>()(用于调试)?

  •  2
  • Omer Raviv  · 技术社区  · 14 年前

    我知道这是 answered before

    有没有任何可行的方法来实现GC.GetAliveInstancesOf(),可以在VisualStudioDebug监视窗口中进行评估?萨沙·戈尔茨坦在书中展示了一个解决方案 this article ,但它要求要查询的每个类都从特定基类继承。

    一个想法可能是以某种方式利用 !dumpheap type命令

    有人有有效的解决方案吗?

    2 回复  |  直到 7 年前
        1
  •  2
  •   Omer Raviv    12 年前
        2
  •  1
  •   Hans Passant    14 年前

    没有什么比猜测某种用户代码可能对找到它不拥有的根感兴趣更能拖累垃圾收集器了。保持尽可能快的速度是至关重要的。就这点而言,唯一能让您看到被引用内容的方法就是冻结所有可能从垃圾收集堆中分配内存的线程。

    许多的

    推荐文章