Управляемая куча Vmmap (частный рабочий набор) в 10 раз превышает общий размер кучи GC
Я пытаюсь понять использование оперативной памяти моего приложения и перепутал с наблюдениями ниже.
- VMMap показывает, что размер управляемой кучи моего приложения составляет около 110 МБ, и почти все это находится в частном рабочем наборе (Private WS)
Если я просматриваю полный дамп памяти с помощью windbg или debugdiag, то общий размер кучи GC составляет всего 16 МБ или около того.
Как мне интерпретировать эти данные? Почему в управляемой куче процесса есть такой большой PrivateWS, который невозможно отследить в дампе памяти?
Это происходит из-за функции накопления памяти в ASP.NET? Есть ли способ подтвердить это в дампе памяти процесса?
Согласно VMMap,Private WS - это объем физической памяти, назначенный типу или региону, который нельзя использовать совместно с другими процессами.
Любые предложения о том, как вернуть неиспользованную оперативную память?