VS2010 Запись отладки очень медленная - PullRequest
7 голосов
/ 14 июля 2010

Когда я начинаю отладку своего веб-приложения из «Начать с отладки» (F5) или присоединяюсь к рабочему процессу ASP.NET, он будет загружать сборки из приложения очень медленно, чтобы я мог по отдельности прочитать их имена при прокрутке строка состояния VS2010.

Когда я начинаю отладку, я вижу, что MSVSMON.exe использует 50% ЦП и блокируется на 50%, явно заполняя полное ядро. Кроме того, видя, что это описывается как Visual Studio Remote Debugging Monitor, я запутался, если это вообще нужно использовать, так как я отлаживаю все локальное на моей машине.

Я использую свою среду, фактически подключенную по протоколу RDP, если это может быть связано с этим.

Хост-машина: Server 2008 Enterprise R2 Dualcore Xeon 2,53 ГГц

Виртуальный экземпляр: полная загрузка процессора Win7 Enterprise 6 ГБ ОЗУ

Это кажется нормальным? Должен ли MSVSMON даже работать, если я отлаживаю локально?

Ответы [ 5 ]

19 голосов
/ 23 июля 2010

Menu.Debug.DeleteAllBreakpoints

Работал на меня.

4 голосов
/ 14 июля 2010

Да, msvsmon.exe будет использоваться при отладке 64-битной программы.Поскольку Visual Studio полностью 32-разрядная, для устранения разрыва необходим удаленный отладчик.

Нет никаких оснований предполагать, что замедление вызвано тем, что он является удаленным отладчиком.Скорее всего, будет очень сложно найти и загрузить файлы .pdb.Или случайно включить опцию отладки в смешанном режиме, чтобы отладчик также просматривал все неуправляемые загрузки DLL и находил для них символы.Это только догадки, конечно.

3 голосов
/ 28 января 2013

У меня была такая же проблема, хотя это решение не помогло мне. В конце концов, я должен был зайти в Инструменты-> Параметры-> Отладка-> Символы и снять флажок расположения файла символов (.pdb), а также нажать кнопку Очистить кэш символов. После этого отладка стала намного приятнее.

3 голосов
/ 23 июля 2010

Поиск символов часто очень медленный в начале отладки, особенно если у вас настроен один из параметров удаленного символа, и вы не установили «игнорирование» в различных библиотеках DLL, которые не будут иметь символы на серверах MS.

Это могут быть не только сторонние компоненты вашего кода, но и перехватчики DLL, внедряемые, например, графическими драйверами, поэтому стоит следить за тем, что пытается загрузить.

Запуск Fiddler (http://www.fiddler2.com/fiddler2/) при запуске отладки покажет вам, выбираются ли символы удаленно.

Даже если VS не установлен явно (в tools-> options-debug) для удаленной выборки символов, он все равно будет следовать переменной среды _NT_SYMBOL_PATH - проверить, установлено ли это, и на что он указывает.

0 голосов
/ 27 марта 2014

Для меня проблема была в том, что у меня была установлена ​​PUP (потенциально нежелательная программа), которая замедляла другие процессы.После того, как MSVSMON несколько раз демонстрировал это поведение, я узнал, что процесс Cltmng.exe (из Search Protect by pipe) также занимал необычное количество ЦП, удалив его, что решило проблему.

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