.net 估算/计算内存中对象大小的好方法
假设我有一个对象Tom,它有一个类人.net 估算/计算内存中对象大小的好方法,.net,.net,假设我有一个对象Tom,它有一个类人 Class Person String Name DateTime BirthDate String Role Int32 Salary 如果它有以下值,你能给我一个内存大小的近似值吗 Name=汤姆。出生日期=1990年1月1日。角色=用户。工资=30000 你能给我一些关于计算是如何进行的见解吗?要得到一个真实的数字,请使用。要以编程方式执行此操作,请使用(仅适用于值类型)。您还可以通过直接引用GC来完成此操作 看见 long StopBytes =
Class Person
String Name
DateTime BirthDate
String Role
Int32 Salary
如果它有以下值,你能给我一个内存大小的近似值吗
Name=汤姆。出生日期=1990年1月1日。角色=用户。工资=30000
你能给我一些关于计算是如何进行的见解吗?要得到一个真实的数字,请使用。要以编程方式执行此操作,请使用(仅适用于值类型)。您还可以通过直接引用GC来完成此操作 看见
long StopBytes = 0;
foo myFoo;
long StartBytes = System.GC.GetTotalMemory(true);
myFoo = new foo();
StopBytes = System.GC.GetTotalMemory(true);
GC.KeepAlive(myFoo); // This ensure a reference to object keeps object in memory
long TotalBytes = StopBytes - StartBytes;
MessageBox.Show("Size is " + TotalBytes.ToString());