PHP的memory_get_usage的.NET等价物是什么?

时间:2010-06-17 09:01:43

标签: asp.net

PHP具有函数memory_get_usage来报告PHP脚本具有的内存量。你怎么能在.NET(ASP.NET C#)中做同样的事情?

另外,您是否可以报告对象占用的内存量(例如SiteMap或DataTable)?

1 个答案:

答案 0 :(得分:2)

对于您当前的流程,您可以使用

Process currentProcess = System.Diagnostics.Process.GetCurrentProcess();
long totalBytesOfMemoryUsed = currentProcess.WorkingSet64;
long privateMemory = currentProcess.PrivateMemorySize64;

long managedMemory = GC.GetTotalMemory(true);

将报告已分配的托管内存量。

可以使用

获取值类型的大小
var size = sizeof(int);

对于任意对象来说,它有点棘手,因为它可能包含许多未知大小的较小对象。

另见