【发布时间】:2011-08-04 03:49:55
【问题描述】:
我正在寻找一种以编程方式获取 .NET 和 Java 中某个类类型的实例数量的方法。
例如,我有 Foo 类。我希望能够在同一进程中获取 Foo 的所有实例的当前计数。
但是我不能修改 Foo,所以一个带计数的静态 int 出来了。此外,我不能只将我创建的所有实例添加到某个静态列表中并对其进行计数。我只想说:
System.GC.numberOf< Foo >()
什么的。
我正在查看垃圾收集器,但找不到任何相关方法。
【问题讨论】:
-
这有重复。到处搜索。
-
有类似的问题,但答案总是涉及使用某种计数器修改类。我想计算我没有定义或控制的类的实例
-
好吧,你不能。这也在一些答案中有所说明。
-
跟踪您在您控制的代码中创建的对象数量。
-
我已经使用工具来计算远程进程中的对象实例,这对于追踪泄漏非常有用。我希望有一种方法可以在同一程序中复制此逻辑以进行测试