Все инструменты, описанные выше, являются отличными инструментами. Если у вас есть на это бюджет, вам будет сложно ошибиться с MemProfiler или RedGate, о которых упоминал Митч. Я использовал оба, хотя RedGates был предыдущей версией. Я понимаю, что их последняя версия действительно поднялась на ступеньку выше.
Если у вас нет на это бюджета, то ProcessMon обычно является первым инструментом, к которому вы хотите обратиться, если вы подозреваете, что у вас может быть утечка памяти. Настоятельно рекомендуем набор инструментов Sysinternals для устранения неполадок.
Хотя понимание того, как читать данные, предоставленные ProcessMon, поможет вам подтвердить, что у вас есть утечка памяти, потратить немного времени на изучение использования WinDbg поможет вам определить что такое утечка - хотя требует немного больше обязательств.
Все упомянутые инструменты, WinDbg, MemProfiler и RedGate, позволят вам проверить память службы или любого другого процесса. Отсутствие доступных программных символов усложнит работу всех инструментов.
Отсутствие доступных символов является «грехом» - если вы являетесь владельцем сервиса, перестройте его с помощью символов. Если вы не хотите развертывать их вместе со службой, обратите внимание на реализацию Source Server и Symbol Server (настоятельно рекомендуется). Если продавцу принадлежит услуга, изводите его, чтобы предоставить версию с символами.
Скачать Средства отладки для Windows
Ознакомьтесь с Руководствами по отладке Tess Ferrandez , чтобы начать работу с WinDbg.
Джон Роббинс о символах
Джон Роббинс на исходном сервере