많은 질문이 있습니다. 이에 대해서는 매우 구체적입니다. 두 가지 지침으로 콘솔 응용 프로그램을 만듭니다. 큰 용량의 목록을 만들고 샘플 데이터로 채운 다음 해당 목록을 지우거나 null로 만듭니다. 내가 알고 싶은 것은 내가 디버깅하는 동안/측정/프로파일을 알 수있는 방법이 있다면, 목록이 지워지고 null-ed 된 후에 응용 프로그램이 사용하는 실제 메모리가 목록과 거의 같다면 생성되어 채워졌습니다. 응용 프로그램이 정보를 처리하고 GC가 수집을 완료했다는 것을 확실히 알고 있지만, 이후에 내 응용 프로그램이 얼마나 많은 메모리를 소비하는지 확실히 알 수 있습니까? 나는 목록을 작성하는 과정에서 많은 메모리가 할당되고 필요하다면 다른 프로세스에서 메모리를 사용할 수 있지만 그 후에는 응용 프로그램이 소비 한 실제 메모리를 측정 할 수 있다는 것을 알고있다. 끝? 감사합니다..net 메모리 측정 및 프로파일 링
편집 : 여기에 제 실제 시나리오와 목표가 있습니다. USB 장치를 통해 많은 양의 데이터를 읽는 WPF 응용 프로그램에서 작업합니다. 어떤 시점에서, 응용 프로그램은 약 700MB 이상의 메모리를 할당하여 모든 List 데이터를 저장하고 파싱, 분석 한 다음 파일 시스템에 씁니다. 파일 시스템에 데이터를 쓸 때 모든 목록을 삭제하고 이전에 큰 데이터를 보유한 모든 콜렉션을 처리하므로 다른 데이터 처리를 할 수 있습니다. 성능 문제가 발생하거나 결국 모든 메모리를 다 사용하지 않을 것임을 알고 싶습니다. 많은 양의 메모리를 사용하는 프로그램에서 문제가 없지만 몇 가지 USB 처리 후에도이 프로그램을 사용하는 것은 좋지 않습니다. 어떻게 제어 할 수 있습니까? 이와 같은 경우에 메모리 또는 프로세스 프로파일 러가 사용됩니까? 단순히 작업 관리자를 사용하면 응용 프로그램이 800MB의 메모리를 차지하는 것을 볼 수 있지만 콜렉션을 지우면 메모리는 그대로 유지됩니다. Windows가 필요하지 않는 한이 작업이 중단되지 않는다는 것을 이해합니다. 따라서 메모리가 지워졌고 (응용 프로그램이나 창에 의해) 자유롭게 사용할 수 있는지 궁금합니다.