Я пытался сравнить объем памяти между приложением VB6 и приложением .Net. Попытка определить среднюю разницу между ними.
.Net-код по большей части является прямым переводом VB6 и по большей части содержит те же инструкции, что и запрограммированные в C #. Так что, хотя это сравнение между яблоками и апельсинами, это сравнение программ, которые функционально (если не логически) эквивалентны.
Я использовал Process Explorer , чтобы помочь мне определить использование памяти приложениями, однако есть несколько областей, которые оставили меня в недоумении:
- Я пытался определить общее потребление памяти. Какой из столбцов памяти процесса я должен использовать. До сих пор я смотрел на рабочие наборы.
- Для сравнения размера DLL в приложении PExplorer показывает Size, WS Total и другие счетчики WS, как их можно интерпретировать? И почему Размер так отличается от WS Total, не должны ли они быть одинаковыми?
Пока я понял, что в WS Total входят как WS Private, так и WS Shareable. Таким образом, использование только WS Total может быть обманчивой мерой. Я также прочитал из вопросов, таких как .Net exe памяти , что рабочий набор .Net обычно больше, чем должно быть. Может ли создание экземпляра процесса в среде с нехваткой памяти, скажем, виртуальной машиной с 128 МБ уменьшить размер рабочего набора до минимума?
Буду признателен за любую помощь или понимание.