如何检查为c#中的类型创建的实例数量?

时间:2017-02-10 05:08:47

标签: c# oop

如何检查为特定类型创建的实例数以及每个实例占用的内存量。请举个例子。

1 个答案:

答案 0 :(得分:1)

正如评论中所建议的,我将添加一个例子

public class Myclass
{
    private static long Count;

    public Myclass()
    {
         Interlocked.Increment(ref Count);
    }
}

这只适用于您自己的课程。例如,您无法找到System.String的实例数。

要查明班级的大小,您应该使用此using System.Runtime.InteropServices;

[StructLayout(LayoutKind.Sequential)]
public class MyClass
{
    public int MyField;
    public int MyField;
}

 int sizeInBytes = Marshal.SizeOf(typeof(MyClass)); //return 8

Also you have here a list with size of int, byte, etc.