gpt4 book ai didi

c# - 我怎样才能找出一个类创建了多少个对象

转载 作者:太空狗 更新时间:2023-10-29 20:02:11 26 4
gpt4 key购买 nike

在 C# 中,我如何知道一个类创建了多少个对象?

最佳答案

你必须在构建时增加一个静态计数器:

public class Foo
{
private static long instanceCount;

public Foo()
{
// Increment in atomic and thread-safe manner
Interlocked.Increment(ref instanceCount);
}
}

一些注意事项:

  • 这不计算当前在内存中实例的数量——这将涉及有一个终结器来递减计数器;我不会推荐
  • 这不包括通过某些机制创建的实例,例如序列化,它可能会绕过构造函数
  • 显然这只有在您可以修改类时才有效;例如,您无法找出创建的 System.String 实例的数量 - 至少在没有连接到调试/分析 API 的情况下是这样

出于兴趣,您为什么需要这些信息?

关于c# - 我怎样才能找出一个类创建了多少个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2392075/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com