Насколько точен диспетчер задач? - PullRequest
2 голосов
/ 12 августа 2010

У меня есть приложение C ++, когда я наблюдаю за диспетчером задач, он показывает, что использование памяти приложения постепенно увеличивается.

Я вручную проверил свой исходный код и использовал Visual Leak Detector для Visual C ++ , чтобы найти утечку памяти, но я не смог ее найти. Это 100%, что есть утечка памяти, и я не мог ее найти, или есть ли вероятность, что диспетчер задач вводит меня в заблуждение?

Ответы [ 3 ]

4 голосов
/ 12 августа 2010

Это не так.Он имеет несколько опций для статистики памяти (используйте View + Columns), и версия имеет значение, но представление по умолчанию показывает рабочий набор.Сколько виртуальной памяти ваша программа использует в оперативной памяти.Это статистическое число, которое может измениться очень быстро.Например, просто сверните главное окно вашего приложения.

Размер виртуальной машины, который он может показать, тоже невелик.Это число включает в себя свободных блоков кучи.Получить реальную память очень сложно, прочитайте мелкий шрифт в статье SDK для HeapWalk.

Она бесполезна для обнаружения утечек, если только вы не утечки ее.

1 голос
/ 12 августа 2010

Я использую Process Explorer в качестве замены для диспетчера задач. Он показывает графики истории использования CPU / mem

0 голосов
/ 12 августа 2010

Я использую Extended Task Manager http://www.warecase.com/products.asp

Это полезно для отладки, особенно для проверки, существует ли поток или нет, и в других подобных случаях.Он может предоставить много информации, если у вас есть pdb для вашего процесса или приложения.

Возможно, вы можете использовать DevPartner для выявления утечек памяти.Это очень полезно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...