.NET 메모리 관리가 대형 개체 힙을 만드는 이유는 무엇입니까? 그것의 대부분은 비어있는 것 같습니다. 이것에 대해 염려해야 할 것이 있습니까?대형 오브젝트 힙이 대부분 비어있는 이유는 무엇입니까?
실제로 응용 프로그램에서 179MB 상당의 큰 개체 만 있다는 것을 의미합니까? 1714 MB는 1171428792 (Heap0 LOH)에서 983396616 (무료 LOH)을 빼서 도착합니다.
아래 정보는 w3wp.exe 즉 ASP.NET 프로세스에서 생성 된 덤프 파일에서 WinDbg를 사용하여 수집되었습니다. 프로세스는 Windows 2008 64 비트 운영 체제에서 호스팅됩니다. 응용 프로그램은 "무료"라는 개체의 총 바이트 값 봐 -stat! DumpHeap을 실행 3.
0:025> !HeapStat
Heap Gen0 Gen1 Gen2 LOH
Heap0 4628496 3840808 319586376 1171428792
Free space: Percentage
Heap0 24 24 1926224 983396616SOH: 0% LOH: 83%
이 데이터를 덤프 파일에서 가져올 수 있습니까? –
@Dhwanil 가능. 전체 대 미니 덤프에 의존 할 수 있으며 아마도 덤프 파일에서 VS가 아닌 WinDbg를 사용해야 할 것입니다. 실행시에 VM Map을 사용하는 것이 더 쉽습니다 :-) – Richard