在C#/.NET/.NET Core应用程序编程开发中,如何读取一个实例对象占用的内存大小呢?比如,现在有Hashtable,List<T>或者其他任意的实例对象,如何通过C#编程来获取到这些实例对象占用的内存空间大小呢?
Hashtable
List<T>
Rector
2020-03-10 提问
使用GC.GetTotalMemory()方法来读取一个实例对象占用的内存空间大小,如下:
GC.GetTotalMemory()
调用示例如下:
2020-03-10 回答
可以使用BinaryFormatter类的Serialize()方法来获取一个实例对象的内存占用大小(此方法只能计算大概的内存占用大小,并不精确),如下:
BinaryFormatter
Serialize()
完整的示例代码如下:
码龄: 3091天
专注.NET/.NET Core