힙에 얼마나 많은 메모리가 할당되어 있는지 확인해야합니다. 이 값을 프로그래밍 방식으로 C#으로 얻는 방법이 있습니까?주어진 .NET 응용 프로그램에서 메모리 할당을 어떻게 볼 수 있습니까?
나는 System.Runtime.InteropServices.Marshal.SizeOf(...)
에 대해 알고 있지만 그것은 단지 나에게 개체의 크기를 알려줍니다.
힙에 얼마나 많은 메모리가 할당되어 있는지 확인해야합니다. 이 값을 프로그래밍 방식으로 C#으로 얻는 방법이 있습니까?주어진 .NET 응용 프로그램에서 메모리 할당을 어떻게 볼 수 있습니까?
나는 System.Runtime.InteropServices.Marshal.SizeOf(...)
에 대해 알고 있지만 그것은 단지 나에게 개체의 크기를 알려줍니다.
PerformanceCounter 당신이 "모든 힙에 #의 바이트의"를 조회 할 수 있습니다 사용, 자신의 과정에서 , 그리고 심지어 다른 프로세스.
".Net CLR 메모리"범주를 사용하면 사용할 수있는 많은 카운터를 볼 수 있습니다.
Jon Skeet이 제안한 PerformanceCounter와 GC.GetTotalMemory 사이의 시스템로드 차이점을 확인해야합니다.
GC.GetTotalMemory
은 필요한 것을 모두 처리합니까?
SizeOf
는 당신에게 너무
정렬 화 크기를 알 수 있습니다 -. 메모리에 반드시 크기)
달콤한. 또한 인스턴스화 된 특정 클래스의 인스턴스 양을 얻는 방법을 알고 있습니까? – Spoike
@ Spoike : 아니요, 프로파일 링 API로 실행하지 않고도 해당 정보를 사용할 수 있다고 생각하지 않습니다. –