it-swarm.com.ru

Отладка/загрузка Visual Studio очень медленная

Я в конце концов. Visual Studio обычно мучительно медленно отлаживает или просто загружает («запускает без отладки») мои сайты ASP.NET MVC. Не всегда: поначалу проекты загружаются красиво и быстро, но как только они загружаются медленно, после этого они всегда будут загружаться медленно. Я мог ждать 1-2 минуты или больше.

Моя настройка:

Я использую Visual Studio 2012 Express , в настоящее время, но у меня была такая же проблема и в Visual Studio 2010 Express. Мое решение хранится на сетевом диске; в частности, это мои документы, перенаправленные на сетевой диск, если это имеет значение. (Так не должно быть. В некоторых случаях мой сайт загружается очень быстро при такой настройке.)

Обычно я загружаю в Internet Explorer 9, но та же проблема возникает в Firefox.

Это может произойти в любом проекте ASP.NET MVC, над которым я работаю, и, кажется, вращается вокруг наличия DisplayTemplates, что делают все мои проекты ASP.NET MVC. И это все C # и Razor, если это имеет значение.

Симптомы:

Система загрузит мои символы сотни раз. По сути, следующее, но есть как минимум 300 таких строк, каждая из которых содержит несколько разные DLL файлы для одного и того же CSHTML:

'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_contact.cshtml.22013bb9.xighmhow.dll', Symbols loaded.
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_contact.cshtml.22013bb9.cv5hktkf.dll', Symbols loaded.
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_statuscode.cshtml.22013bb9.1o77hs8i.dll', Symbols loaded.
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_statuscode.cshtml.22013bb9.jja-77mw.dll', Symbols loaded.
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_location.cshtml.22013bb9.l_e9ev_s.dll', Symbols loaded.
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_location.cshtml.22013bb9.b4n59gom.dll', Symbols loaded.

В приведенном выше у меня есть три DisplayTemplates: «Контакт», «Расположение» и «StatusCode». Похоже, что IIS загружает символы дважды при каждом вызове шаблона отображения. Таким образом, если я отображаю таблицу из 100 записей, которая вызывает все три из этих шаблонов отображения, то загружается 600 отдельных символов.

Это тоже не быстрая операция. Просматривая файлы журнала, которые генерирует IIS, для загрузки каждого символа требуется около 200 мс. Таким образом, супер-длинные задержки.

Что я пробовал:

  • Отладка или выпуск версии, это не имеет значения.
  • Помещение моего проекта в полную IIS реализацию на веб-сервере запускает его очень быстро, без проблем.
  • Cassini, IIS Express 7.5 и IIS Express 8.0 имеют проблемы.
  • Удалить все точки останова ничего не делает.
  • Очистить решение или удалить .suo также ничего не делать.
  • Если я восстановлю IIS Express, или удалю папку My Docs\IISExpress, или исправлю/переустановлю Visual Studio → проблема МОЖЕТ исчезнуть, но только на некоторое время, прежде чем она вернется снова.

Любой совет вообще приветствуется.

Чтобы ответить на дополнительные вопросы, да, моя машина определенно имеет мощность. Раздражает то, что один и тот же проект, с НИЧЕГО измененным, иногда может загружаться очень очень быстро, обычно после того, как я восстановлю IIS Express и удалю папку My Docs\IISExpress. В конце концов «что-то» происходит, и до загрузки снова остается 2 минуты. То, над чем я работаю, не является сложным проектом. Нет внешних библиотек или зависимостей, и у моего VS.NET нет никаких надстроек вообще.

Следует отметить, что эта машина имеет Symantec Endpoint Protection, которая в прошлом вызывала хаос. Но прямое отключение (хорошо быть администратором) не решило проблему.

У меня есть теория на данный момент. Я думаю, что это все, потому что я работаю с перенаправленной папкой с сетевого ресурса. Пока отладчик просматривал сотни строк «загруженных символов», я остановился, чтобы посмотреть, что он делает. Это было в моем коде, загружая шаблон DisplayTemplate, который у меня был. Шагнув в шаблон, выведите это:

Step into: Stepping over non-user code 'System.Threading.WaitHandle.InternalWaitOne'
Step into: Stepping over non-user code 'System.Threading.WaitHandle.WaitOne'
Step into: Stepping over non-user code 'System.CodeDom.Compiler.Executor.ExecWaitWithCaptureUnimpersonated'
Step into: Stepping over non-user code 'System.CodeDom.Compiler.Executor.ExecWaitWithCapture'
Step into: Stepping over non-user code 'Microsoft.CSharp.CSharpCodeGenerator.FromFileBatch'
Step into: Stepping over non-user code 'Microsoft.CSharp.CSharpCodeGenerator.System.CodeDom.Compiler.ICodeCompiler.CompileAssemblyFromFileBatch'
Step into: Stepping over non-user code 'System.Web.Compilation.AssemblyBuilder.Compile'
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_statuscode.cshtml.22013bb9.bciuyg14.dll', Symbols loaded.
Step into: Stepping over non-user code 'System.Web.Compilation.BuildManager.CompileWebFile'
Step into: Stepping over non-user code 'System.Web.Compilation.BuildManager.GetVPathBuildResultInternal'
Step into: Stepping over non-user code 'System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert'
Step into: Stepping over non-user code 'System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory'
Step into: Stepping over non-user code 'System.Web.Mvc.BuildManagerWrapper.System.Web.Mvc.IBuildManager.FileExists'
Step into: Stepping over non-user code 'System.Web.Mvc.VirtualPathProviderViewEngine.GetPathFromGeneralName'
Step into: Stepping over non-user code 'System.Web.Mvc.VirtualPathProviderViewEngine.FindPartialView'
Step into: Stepping over non-user code 'System.Web.Mvc.ViewEngineCollection.Find'
Step into: Stepping over non-user code 'System.Web.Mvc.ViewEngineCollection.FindPartialView'
Step into: Stepping over non-user code 'System.Web.Mvc.Html.TemplateHelpers.ActionCacheViewItem.Execute'
'iisexpress.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\b63f8236\6775085d\App_Web_statuscode.cshtml.22013bb9.kwj3uqan.dll', Symbols loaded.
Step into: Stepping over non-user code 'System.RuntimeType.CreateInstanceSlow'
Step into: Stepping over non-user code 'System.Web.Mvc.DependencyResolver.DefaultDependencyResolver.GetService'
Step into: Stepping over non-user code 'System.Web.Mvc.BuildManagerViewEngine.DefaultViewPageActivator.Create'
Step into: Stepping over non-user code 'System.Web.Mvc.BuildManagerCompiledView.Render'

Похоже, Visual Studio перекомпилирует мою displaytemplate каждый раз он вызывается, что снова сотни раз. Моя теория заключается в том, что Visual Studio компилирует файл, сохраняет его в общем сетевом ресурсе, затем сетевой ресурс каким-то образом устанавливает для него новое время, и тогда Visual Studio думает, что файл изменился, и, таким образом, Visual Studio перекомпилирует его еще раз. Только теория, хотя; Я действительно понятия не имею.

Например, у меня есть автономные файлы (это настольный компьютер в офисе; мне было все равно). Я собираюсь отключить, перезагрузиться и повторить попытку завтра.

Плюс, перемещение моего проекта, как есть, в локальный C: исправляет это. Он загружается очень быстро. Но это не идеально в рабочей среде. Я теряю предыдущие версии, мой код не копируется вообще, если я не копирую его вручную, и он больше никому не передается.

Я могу обойтись копированием туда и обратно из C на общий сетевой ресурс, если это произойдет. Гораздо неприятнее ждать две минуты для каждой загрузки страницы.

448
Ber'Zophus

Вот как я решил проблему «медленной загрузки символов» в Visual Studio 2012:

  • Зайдите в Инструменты -> Параметры -> Отладка -> Общие

  • Проверьте флажок рядом с «Включить только мой код».

  • Перейдите в Инструменты -> Параметры -> Отладка -> Символы

  • Нажмите кнопку «...» и создайте/выберите новую папку на локальном компьютере для хранения кэшированных символов. Я назвал мой «Кэширование символов» и поместил его в Documents -> Visual Studio 2012.

  • Нажмите «Загрузить все символы» и дождитесь загрузки символов с серверов Microsoft, что может занять некоторое время. Обратите внимание, что кнопка «Загрузить все символы» доступна только во время отладки.

  • Снимите флажок рядом с «Серверы Microsoft Symbol», чтобы запретить Visual Studio удаленно запрашивать серверы Microsoft.

  • Нажмите «ОК».

Отныне загрузка символов должна быть намного быстрее. 

Обратите внимание, что при внесении каких-либо изменений/загрузок в сборки Microsoft вам может потребоваться вернуться в диалоговое окно «Символы» и снова «Загрузить все символы».

589
Zeb Kimmel

Отключение intelliTrace исправило это для меня. 

В Visual Studio Инструменты -> Параметры -> IntelliTrace

Затем снимите флажок «Включить IntelliTrace».

Disable IntelliTrace in Visual Studio 2012

102
moke

Ничего из этого не помогло мне, но я нашел точку останова на удаленном символе. Кажется, 2010 висел на нем. Чтобы увидеть, если это ваша проблема, выполните debug-> windows-> точки останова, если они есть, просто удалите их.

Сондерс упомянул, что проверил это, но это не было упомянуто в решениях этой проблемы. Может быть, это общеизвестно для некоторых, но не для всех нас.

72
user2144480

Я удалил папку «Temporary ASP.NET Files», и загрузка моей локальной страницы значительно улучшилась. Вот путь ...% temp%\Временные файлы ASP.NET \

38
Shaun Kennedy

Вы включили FusionLog?

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

FusionLog записывает тонны журналов на диск. Просто отключив его на RegEdit, я решил все.

Это ключ FusionLog в реестре:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion

Проверьте значение ForceLog (1 включено, 0 отключено).

26
rkawano

Я думаю, что наконец-то смогу узнать причину, но не причину. Когда проблема начала возникать снова, я заметил, что тонна процессов "conhost.exe" осиротела. Я бы закрыл Visual Studio, и они остались бы открытыми. Окончание задачи по каждому из них окончательно и надежно решило проблему. [с надеждой]

(Просто обратите внимание, что conhost.exe не является процессом Visual Studio, хотя Visual Studio использует его. Таким образом, другие пользователи могут иметь другие приложения, которые запускают conhost.exe. Я знаю, что на моем компьютере нет, поэтому я могу благополучно завершить задачу всем им, кроме YMMV.)

Относительно того, почему это происходит? Кажется, это происходит, когда я открываю более одного проекта одновременно, что я часто делаю, хотя я в любое время собираю и отлаживаю только один из них.


Правка № 1 - К сожалению, это не «серебряная пуля». Это не всегда работает для меня. Обычно, когда дела идут медленно, я просто закрываю все свои сеансы Visual Studio, затем захожу в диспетчер задач и завершаю любой его экземпляр, conhost.exe, iisexpress.exe Microsoft.VisualStudio.Web.Host.exe и MSBuild.exe Я могу найти.

Как правило, после этого, когда я перезапускаю свой проект, он быстро загружается. Но не всегда.

На самом деле я думаю, что лучший способ действий - это, вероятно, не создавать и не отлаживать код из перенаправленной папки/сетевого ресурса.


Правка № 2 - Два года спустя, и это все еще проблема для меня в Visual Studio Community 2013, но я, кажется, по крайней мере нашел преступную задачу: Explorer.exe . Да, кто знал. В тот момент, когда я заканчиваю эту задачу, бац, страница загружается за одну секунду.

Если у меня открыт файловый браузер Windows Explorer для моего перенаправленного сетевого диска (что часто происходит именно там, где находится мой код), эта проблема, похоже, возникает. Закрытие окна не достаточно, я должен убить всю задачу Explorer.exe. Я мог только догадываться, что он делает ... сходить с ума от файловых дескрипторов?

Обычно я могу использовать диспетчер задач, чтобы запустить новую задачу Explorer.exe (я могу только взять столько альт-таббирования), и Visual Studio продолжит загружать Nice и быстро. Но если я снова открою Windows Explorer, он почти всегда возвращается к супер-медленному.

Итак, если у вас есть перенаправленный сетевой ресурс, попробуйте. Это наверняка лучше, чем работать на месте.

25
Ber'Zophus

Я столкнулся с той же проблемой и перепробовал большинство из вышеперечисленных решений. Простое удаление кеша и временных файлов в итоге работает на меня.

Попробуйте удалить содержимое этих двух папок:

C:\Users\\{UserName}\AppData\Local\Microsoft\WebsiteCache

а также

C:\Users\\{UserName}\AppData\Local\Temp (в частности, папки iisexpress и Temporary ASP.NET Files).

Это можно настроить так, чтобы оно происходило автоматически при входе в Windows путем добавления файла cmd в папку C:\Users\\{username}\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup со следующим содержимым:

rmdir C:\Users\\{username}\AppData\Local\Microsoft\WebsiteCache /s /q

rmdir C:\Users\\{username}\AppData\Local\Temp /s /q
24
aricons

Выше приведены все хорошие решения, и я попробовал все из них, но получил решение здесь , которое 

Debug -> Delete All Breakpoints
21
Tahir Hassan

Для меня это было IE 9.08.8112.16241. Как только я использовал Firefox или Chrome, не было никакой медленной отладки с F10 или F11. Я не знаю, в чем проблема с IE, но сейчас я официально презираю его использование для тестирования.

Обновление: я отключил все надстройки IE, и он вернулся на полную скорость. Включение их по одному показало, что виновником был LastPass (в моем случае). Я думаю, что я не могу обвинить MS в конце концов.

18
DMadden51

Для меня я реализовал этот совет который существенно улучшил производительность, добавив следующие два атрибута в тег компиляции в web.config

<compilation ... batch="false" optimizeCompilations="true"> ... </compilation>

Что делает batch = "false"?

Это делает предварительную компиляцию более избирательной, компилируя только те страницы, которые изменились и требуют повторной компиляции

Что именно делает optimizeCompilations? Источник

ASP.NET использует хеш-код для каждого приложения, который включает состояние количество вещей, включая папку bin и App_Code, и global.asax. Каждый раз, когда запускается домен приложения ASP.NET, он проверяет, является ли это хеш-код изменился по сравнению с ранее вычисленным. Если это так, затем вся папка codegen (где скомпилированы и теневые копии сборки живут) стирается.

Когда эта оптимизация включена (через optimizeCompilations = "true"), хеш больше не учитывает bin, App_Code и global.asax. В результате, если они меняются, мы не сотрите папку с кодомгенами.

Ссылка: Элемент компиляции на MSDN

13
Korayem

У меня были проблемы с производительностью при отладке, и я испробовал очень много вариантов отладчика. В моем случае огромная производительность достигается при изменении этих параметров:

Инструменты - Параметры - Отладка - Окно вывода - (Общие настройки вывода - Все выходные данные отладки) - ВЫКЛ

12
arkhivania

В моем случае это было расширение Visual Studio .NET Reflector (версия 8.3.0.93) с VS 2012. Отладка занимала 10 секунд для каждого Step Over (F10).

В Visual Studio перейдите в Tools/Extensions and Updates ... и отключите .NET Reflector Расширение Visual Studio . Не забудьте перезапустить Visual Studio.

12
shamp00

В моем случае это было 

Tools/Options/Debugging/General/Enable JavaScript debugging for ASP.NET (Chrome and IE)

Как только я снял этот флажок, мой отладочный запуск изменился с 45-60 секунд до 0-5 секунд.

11
toddmo

У меня были проблемы с медленной отладкой Visual Studio, когда был включен отладчик "Native Code". Попробуйте отключить это.

На «Visual Studio 2012» перейдите по ссылке:

  1. Свойства проекта ->
  2. Интернет ->
  3. Отладчики (внизу страницы). -> 
  4. Отключить все, кроме ASP.NET

Надеюсь, поможет.

Похожие вопросы: 1 , 2

10
Paulius Zaliaduonis

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

Я смутно помнил, что файл "suo" (в той же директории, что и файл решения "sln") может быть поврежден и все замедлится.

enter image description here

Я удалил мои файлы "suo" и все было в порядке. Удаление файлов .suo безвредно и подразумевает только воссоздание моего макета Windows, а также запуска проекта и нескольких других некритических настроек.

9
Larry

Я также столкнулся с этой проблемой, ниже приведены шаги, которые я выполняю, и это работает для меня всегда:

  • Удаление файла .suo решения.
  • Удаление временных файлов ASP.NET (Вы можете найти его по адресу % WINDOW%\Microsoft.NET\Framework \\ Временные файлы ASP.NET
  • Удаление всех точек останова в приложении.
9
Geeky Ninja

Я не знаю, сохраняется ли у вас эта проблема, но я отлаживаю сайты в Visual Studio, подключив отладчик к самому процессу, а не позволяя VS сделать это для меня, и я обнаружил, что это значительно улучшило время. Я использую расширение для VS под названием AttachTo, и у меня есть небольшая статья о том, как я его использую здесь

Надеюсь, это поможет.

9
Andrew Davis

Моя медленная проблема VS была решена путем отключения Browser Link

enter image description here

7
Salty

Потратив весь день на ожидание загрузки символов, столь же медленных, как скорость черепахи, микширование и переключение между всеми возможными комбинациями: Только мой код, Кэширование символов , Intellitrace , Just-In-Time , процессы убийства и т. д.

Мое решение было на самом деле отключить антивирус. Да, Защитник Windows замедлял запуск моего проекта! Это проверило бы все dll, поскольку Visual Studio запросил их, и замедлило весь процесс загрузки символов.

Я должен сказать, что у наших машин есть отличные характеристики для быстрой компиляции решения, так что это никогда не было проблемой. Мы кодируем в VS 2013 Ultimate.

6
I.G. Pascual

Если кто-то замечает, что такое поведение выходит из левого поля, убедитесь, что в web.config не установлены точки останова. Я должен был установить один случайным щелчком мыши, и это действительно замедлило все операции отладки.

6
zmercier

Очистка кеша символов работала для меня. 

Смотрите: строка меню/Инструменты/Параметры/Отладка/Символы/Пустой кэш символов

5
Dimitri C.

Пожалуйста, убедитесь, что вы не открывали Visual Studio в режиме администратора

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

3
sajad

Перейдите к переменным среды и найдите ключ _NT_SYMBOL_PATH.

Удали это.

Вуаля, работал как шарм.

3
ozba

После всего вышесказанного у меня сработало одно:
В окне «Потоки» («Отладка-> Windows-> Потоки») установите для параметра «Группировать» значение «Нет». Это можно сделать только во время отладки.

Это оказало влияние даже после закрытия этого окна. 

3
David

Подобная проблема пропала впустую лучшую половину моего дня!

Поскольку решение моей проблемы отличалось от того, что было сказано здесь, я опубликую его, чтобы оно могло помочь кому-то еще.

Моя была точка останова. У меня была точка останова "Break at function" (т.е. вместо нажатия клавиши F9 в строке кода, мы создаем их с помощью окна точек останова), которая должна останавливаться в библиотечной функции вне моего проекта.

И у меня было "Использовать Intellisense для проверки имени функции" ПРОВЕРЕНО. (Информация здесь .)

Это замедлилось по сравнению с адом (запуск проекта с 2 секунд до 5 минут).

Удаление точки останова решило это навсегда.

3
BuddhiP

Для меня это были условные контрольные точки. Те, кажется, действительно замедляют ход событий.

2
ewolfman

Проблема для меня заключалась в том, что функция «Ссылка на браузер» очень тяжелая, если у вас есть несколько вкладок, открытых для одного проекта!

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

Просто закройте все вкладки, связанные с проектом и оставьте только одну открытую!  

Это бесплатная мгновенно визуальная студия! Это магия ! ;-)

«Ссылка на браузер» - это функция начиная с Visual Studio 2013, которая создает канал связи между средой разработки и одним или несколькими веб-браузерами. Вы можете использовать Browser Link для обновления веб-приложения в нескольких браузерах одновременно, что полезно для кросс-браузерного тестирования ».

2
A. Morel

Быстрое и простое решение для тех, у кого нет особых отклонений от настроек VS по умолчанию.

Сервис -> Импорт и экспорт настроек -> Да, сохранить мои текущие настройки -> Visual C #

Я уверен, что вышеупомянутое решение будет работать с другими настройками по умолчанию. В моем случае что-то испортилось с моими настройками загрузки символов, но я не смог это исправить, хотя попробовал довольно много из предложенных решений.

2
GDS

В моем случае я заметил, что отключение моего интернет-соединения заставит его работать так же быстро, как с помощью ctrl-f5, поэтому я пошел к отладке-> опции-> символов и просто снял флажки со всех мест .pdb.

Похоже, что VS пытался подключиться к этим серверам каждый раз, когда запускался сеанс отладки.

Обратите внимание, что отключение Debug-> Options-> Debugging-> General «Включить поддержку исходного кода» или «Требовать, чтобы исходные файлы точно соответствовали исходной версии» не будет не будет иметь никакого значения.

2
Trap

Ваша «Мои документы» папка сопоставлена ​​с сетевым ресурсом?

Запуск IIS Express может занять минуты вместо секунд, если это так, даже если ваше решение локальное, а не в общей сетевой папке. В regedit.exe убедитесь, что HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User ShellFolders\Personal указывает на %USERPROFILE%\My Documents

Если это не так, измените его или попросите администратора сети сделать исключение из вашей политики.

2
adam0101

Откройте папку решения в Проводнике Windows, закройте Visual Studio, удалите файл .suo из Проводника Windows.

Теперь откройте проект в visual studio, надеюсь, отладчик будет быстро подключен/отключен.

2
Abdul Rauf

Я случайно выбрал опцию «Показывать потоки в источнике». При отмене выбора пошаговое выполнение кода было нормальным.

 Show Threads in Source

2
Ravi Selvaraj

В Visual Studio:

Сервис -> Параметры -> Отладка -> Символы

Выберите «Только указанные модули». Нажмите на ссылку «указать модули» и добавьте пустой модуль (нажмите кнопку «Новый документ» и нажмите «ОК»).

2
MCS

Также есть сложности в частичных просмотрах, когда на странице есть ошибка, которая не распознается сразу. Как Model.SomeValue вместо Model.ThisValue. Это может не подчеркнуть и вызвать проблемы при отладке. Это может быть реальная боль, чтобы поймать.

2
DMadden51

Отладка ядра Asp.net была мучительно медленной, потому что неизвестное расширение VS заменило стандартный отладчик Just in Time.

Я обнаружил такое сообщение на вкладке конфигурации OPTIONS\DEBUGGING\Just-In-Time (как текст предупреждения) .Другой отладчик зарегистрировался как отладчик Just-In-Time. Для восстановления включите отладку Just-In-Time или запустите восстановление Visual Studio.

Описание: https://msdn.Microsoft.com/en-us/library/ssc8234s.aspx?f=255&MSPPError=-2147217396

Возврат обратно отладчика JIT по умолчанию (только что отмеченный вариант Managed, который не был отмечен) решит все мои проблемы.

2
Roman Pokrovskij

Я наконец исправил (или, по крайней мере, значительно улучшил) эту проблему, внеся изменения в локальную конфигурацию IIS:

  1. Открыть IIS конфигурацию
  2. Нажмите в пул приложений
  3. Щелкните правой кнопкой мыши в каждом пуле и откройте расширенную конфигурацию.
  4. Убедитесь, что «Включить 32-разрядные приложения» установлено наTRUE И Режим запуска установлено на AlwaysRunning

Надеюсь, это кому-нибудь поможет, потому что я начинаю сходить с ума, пытаясь решить проблему медленной отладки

1
kristonpelz

Каждый раз, когда я перекомпилировал на локальный хост при разработке, это занимало несколько минут. Это было ужасно сложно. Попробовав множество исправлений, в том числе поместив все это на SSD. Я нашел то, что действительно сработало. Я создал виртуальный диск и поместил в него весь проект. Перекомпиляция на локальный хост теперь занимает менее десяти секунд. Возможно, не элегантно, но это действительно сработало.

1
kunstena

Это может кому-то помочь, У меня была такая же проблема, и я обнаружил, что у меня есть SD-карта с диском e:\ После извлечения SD-карты проблема была исправлена.

1
Maro

Перейдите к IIS экспресс, очистите кеш и сайты

cd "C:\Program Files (x86)\IIS Express\"
  • запустите этот appcmd.exe list site /xml | appcmd delete site /in
  • запустите этот Del /S /F /Q %temp% - чтобы очистить папку Userprofile Temp.
  • запустить этот Del /S /F /Q %Windir%\Temp - это очистит временную папку Windows.

Кроме того, очистите временные файлы в %temp% и выйдите из системы или перезагрузите компьютер

Это удалит все сайты, наслаждайтесь!

1
transformer

В моем случае, 

Я понял, что удаленная отладка работает и потребляет большую часть ресурсов. Мне не нужно было делать приложение 64-битным, поэтому после установки 32-битного режима удаленная отладка не запускалась, и выполнение выполнялось быстрее.

0
nPcomp

Я настроил Visual Studio на новую работу с C # в качестве языка по умолчанию. До меня еще не дошло, что я обречен программировать на VB.

Я забыл о C # по умолчанию, потому что VB вроде бы работал нормально. Однако пошаговое выполнение кода занимало смехотворное количество времени. Попробовав несколько исправлений, я в отчаянии изменил язык по умолчанию на VB ... бинго!

Если вы спустились так далеко, это определенно стоит попробовать.

0
Resource

Для меня это было то, что я отлаживал в режиме управляемой совместимости. В Сервис -> Параметры -> Отладка -> Общие внизу снимите флажок «Использовать режим управляемой совместимости». Отладка стала мгновенной, когда переход по одной строке занимал до минуты. Я подозреваю, что это означает «управляемый» в приведенных выше фрагментах OP.

Подробнее об этом здесь: https://blogs.msdn.Microsoft.com/visualstudioalm/2013/10/16/switching-to-managed-compatibility-mode-in-visual-studio-2013/

0
Chad Hedgcock

Моим решением было просто перезагрузить сохраненную ХОРОШУЮ (резервную) копию моих настроек (сделанную год назад). Стоит попробовать перед сбросом все на пустое. Мой VS2010 займет 60 секунд, чтобы начать отладку и ок. 3 минуты, чтобы остановить отладку. Я сохранил поврежденные настройки и, к моему удивлению, они заняли более 3 МБ вместо 260 КБ. Я загрузил хорошую резервную копию, и все снова отлично :-)

0
David Coster

В моем случае проблема была во внешнем исполняемом exe-файле, а именно:

WUDFCompanionHost.exe

под именем 

"Windows Driver Foundation - User-mode Driver Companion Framework Host Process".

Процесс, который занял устойчивые 10% процессорного времени. Убить его помогло напрямую и через секунду страница загрузилась.

0
belchev

Еще одной возможной причиной является предварительная компиляция старых проектов, которые существуют в файловой системе, но были удалены или частично удалены из Visual Studio.

У меня было решение, которое загружалось после сборки в течение 3,5 минут, я посмотрел на временные метки во временных файлах ASP.NET и увидел, что 3-минутная задержка была для файла в старом проекте. Посмотрел в VS & проект был "недоступен". Удалил его из VS, удалил из файловой системы, и теперь у нас осталось всего 8 секунд.

0
planetClaire

У меня была эта проблема с VS 2013. В течение нескольких месяцев мои тесты были отлажены нормально, но внезапно появлялись страшные сообщения Загрузка символов, и я не знал о том, что я сделал, чтобы вызвать это.

Ничто из предложенного здесь или на любой другой интернет-странице не помогло мне. Я пробовал все по крайней мере 10 раз. Удаление файла .suo не помогло, но в одном месте были два файла с расширением.testsettingsи один с расширением.vsmdi. Эти файлы выглядели устаревшими, возможно, пережиток VS 2010. Член команды, который их создал, давно ушел.

Я обнаружил, что могу удалить все три файла без проблем. Я понял, что достаточно просто удалить конкретный файл.testsettings, чтобы остановить сообщения Загрузка символов. Мой кошмар закончился.

0
Tony Pulokas

Для меня проблема была Avast Antivirus. Я удалил его и запустил Защитник Windows, и все работает нормально. В моем решении я имел эту проблему только при запуске приложений Windows, либо WinForms или WPF. Это никогда не было медленным на веб-приложениях по какой-то причине. 

0
Ogglas

Удалите все из папки c:\Users\username\AppData\Local\Temp\и повторите попытку.

0
peeyush rahariya

Моя проблема была в том, что проект создавался каждый раз, когда я начинал отладку. Все остальные решения в этой ветке помогли немного, но все же привели к тому, что мне пришлось ждать завершения проекта.

Мое решение, чтобы избежать сборки каждый раз, когда вы начинаете отладку:

  • Перейдите к Solution Explorer -> Щелкните правой кнопкой мыши Your Solution File -> Нажмите Properties
  • В поле Property Pages -> слева выберите Configuration -> и снимите флажок Build

  • Нажмите OK

  • Убедитесь, что у вас есть Visual Studio, открытая как Администратор

  • Перейти к Debug -> Attach to Process
  • Флажок CLICK Show processes from all users -> Найти и выбрать процесс, называемый w3wp.exe -> Щелкните Attach -> когда появится предупреждение, нажмите Attach

Теперь вы можете перейти на страницу, которую вы хотите отладить в localhost, и если в вашем файле установлены точки останова, вы можете немедленно начать отладку, не дожидаясь сборки вашего проекта !!

0
Austin Perez