2011-09-27 3 views
6

가능한 메모리 누수를 찾기 위해 응용 프로그램에서 메모리 프로파일 러를 실행하고 있습니다. System.Data.Metadata.Edm.TypeUsage 개체의 수가 지속적으로 증가하고 있으며 이것이 내 메모리 문제의 원인 일 수 있습니다.엔터티 프레임 워크 TypeUsage 개체

누구나 메모리에서 이러한 TypeUsatge 개체를 해제하는 방법을 알고 있습니까? 그들은 내 코드에서 이들에 대한 참조가 없으므로 내부 Entity Framework 객체로 보입니다. 사용중인 블록 내에서 컨텍스트 개체를 래핑했지만 메모리가 해제되었지만이 형식 사용법은 사라지지 않기를 확인했습니다.

제공 할 수있는 도움이 있으면 크게 감사하겠습니다.

답변

0

Entity Framework에서 사용하는 첫 번째 수준의 캐시 (변경 추적기)를보고있을 것입니다. 그것에 대해 더 자세히 읽으려면이 것을 확인하십시오. 메모리 누수가 있으면 놀랄 것입니다. 이것은 정상적인 동작 일 가능성이 큽니다. 얼마나 많은 기억이 누출되는 걸까요?

메모리를 해제하려면 NoTracking과 같은 다른 병합 옵션을 사용해보십시오. 기본값은 AppendOnly이며 다시 사용할 수있는 메모리 유형을 보유합니다. NoTracking 병합 옵션은 매번 데이터베이스로 이동하여 메모리에 아무것도 저장하지 않습니다.

희망이 도움이됩니다.

관련 문제