How do I see memory allocation in a given .NET application?

前端 未结 2 1453
遥遥无期
遥遥无期 2020-12-06 08:22

I need to check how much memory is allocated in the heap. Is there a way to get this value programmatically with C#?

I know about the System.Runtime.InteropSer

相关标签:
2条回答
  • 2020-12-06 08:59

    Using a PerformanceCounter you can query the "# Bytes in all Heaps", from your own process, and even other processes.

    Use the Category ".Net CLR Memory" to see a lot of counters available.

    You have to see what the difference in system load is between the PerformanceCounter and the GC.GetTotalMemory that is proposed by Jon Skeet.

    0 讨论(0)
  • 2020-12-06 09:02

    Does GC.GetTotalMemory do everything you need?

    (Note that SizeOf only tells you the marshalled size, too - not necessarily the size in memory.)

    0 讨论(0)
提交回复
热议问题