Подтвердить что ты не робот

Visual Studio 2010 F10/F11 Stepping Slow, панель инструментов работает хорошо?

Я запускаю Visual Studio 2010 с пакетом обновления 1 (SP1), а также R # 5.1 и несколько других расширений (например, PowerCommands и Power Tools). Где-то вдоль линии моя отладка стала очень медленной. Если я использую клавиши F10/F11 для шага, VS зависает немного, а затем шаги. Если я использую кнопки панели инструментов для шага, это быстро, как ожидалось.

Любая идея, что с моими сочетаниями клавиш?

4b9b3361

Ответ 1

У меня была точно такая же проблема - очень медленная отладка с клавиатурой (например, F10). Некоторые симптомы:

  • Если я нажимаю кнопку "Шаг на панель инструментов", тогда все работает нормально,
  • отставание во время отладки присутствует не только в Visual Studio, но и в любом месте (блокнот, браузер,...),
  • если я установил любой другой браузер в качестве браузера по умолчанию в Visual Studio (я попробовал Firefox), тогда он работает нормально,
  • Если я отключу сторонние расширения браузера в IE, тогда он работает нормально,
  • Если я включу сторонние расширения браузера и отключу LastPass, проблема исчезнет, ​​и отладка с клавиатуры снова будет быстрой!

Итак, попробуйте отключить расширение LastPass, если у вас есть это или все расширения и попробуйте его.

Edit1 - кто-то allready разместил это на форуме LastPass: http://forums.lastpass.com/viewtopic.php?f=12&t=61029

Edit2 - и здесь на SO также:) fooobar.com/questions/256731/...

Ответ 2

Я нашел более глубокое объяснение этой проблемы.

У меня была эта проблема, описанная здесь симптомы user1110039, но я не установил панель инструментов LastPass. И моим браузером по умолчанию является Firefox.

Хорошо, мое приложение использует функцию SetWindowsHookEx() для установки ярлыка в системной системе. Это является причиной блокировки отладочных ключей F10/F11 (только в Windows 7 64 бит). Это не происходит в 32 бит.

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

Ответ 3

У меня была точно такая же проблема. Проблема была решена закрытием окна Watch.

Ответ 4

Попробуйте отладить с помощью Firefox или Chrome. Должно быть что-то о взаимодействии с IE, которое вызывает это поведение.

Ответ 5

Отключить "show threads in source" работал у меня!

Ответ 6

Вызов функции DirectInput Acquire() на клавиатурном устройстве вызвал замедление для меня. Это потенциально связано с замедлением SetWindowsHookEx() - т.е. который может использовать DirectInput.

Ответ 7

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

  • Инструменты → Параметры
  • Отладчик → Снимите флажок "Включить свойство и .ToString"

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

  • Производительность Электроинструменты
  • Команды питания
  • R #

Ответ 8

Убедитесь, что вы установили Service Pack 1. Я считаю, что они исправили по крайней мере одну существенную проблему с производительностью в отладчике.

Ответ 9

Я тоже очень медленный шаг за шагом отлаживал и исправил его, закрыв окно потоков.

Ответ 10

(Обратите внимание на старый поток, поэтому его можно найти в веб-поиске.)

Я обычно оставляю окно == Disassembly == открытым во время отладки (у меня большой экран.) Я только что обнаружил, что одношаговое отключение в отладчике можно ускорить на 50%, если я тоже скрою это окно. -tab- для него может существовать и быть удобным - не имеет значения - но само окно не должно отображаться. Ахаха.

Следуя всем остальным предложениям и более в другом месте, одноступенчатый теперь примерно в 8 раз быстрее. (Около 2,5 шагов в секунду сейчас.) Woo-hoo! Спасибо всем.

(Я не понимаю, как они могут писать такой медленный код пользовательского интерфейса... У меня здесь есть процессор, работающий на двух миллиардах циклов в секунду..., который работает примерно до 400 миллионов инструкций на один шаг. Microsoft-код может быть как-то-быстрее... но тогда я никогда не получал удовольствие от использования .NET и т.д.)

Ответ 11

У меня была эта проблема в моей новой работе, где мы используем Visual Studio 2008 SP1. (Да, знаю, знаю). Длинная задержка на шаге с мерцающими песочными часами. Я всегда использую F10, я даже не думаю об этом, я никак не мог переносить изменение мыши или ждать несколько секунд для простой команды шага.

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

Наконец-то я нашел проблему - я установил свой язык по умолчанию для IDE как С#. Оказывается, проект, над которым я работаю, фактически использует VB.NET, и когда я установил язык по умолчанию на VB.NET(через Tools - Import and Export Settings), отладчик получил так быстро, что я не мог его угнать и случайно нажал F5 в точке останова, которую я хочу изучить.

Я надеюсь, что это поможет кому-то другому.

Ответ 12

В конце концов, отключение Last Pass в моем браузере (IE) было решением этой проблемы для меня, но по пути я узнал много других вещей, которые могли бы так же легко стать причиной. На этот вопрос подтверждается и объясняется целый ряд других действительных ответов на этот вопрос (некоторые из различных ответов на этой странице):

http://blogs.msdn.com/b/visualstudioalm/archive/2015/03/03/make-debugging-faster-with-visual-studio.aspx

В этой статье объясняется, что это замедление F10 может быть связано с открытием различных диагностических окон и панелей инструментов, проблемами загрузки Symbol и т.д., а также объясняется, что делать с замедлением отладки в целом. Это было открытием для глаз, которое, я думаю, будет продолжать помогать мне в будущем, если F10 замедлит его назад.

Ответ 13

Я попробовал все предложение и, наконец, обнаружил, что когда я удалил VS2005, эта проблема была решена. Обратите внимание, что в этой машине VS2005

Ответ 14

В моем случае это было стек вызовов (Visual Studio 15.9.13), что вызвало задержку!

Даже когда я перешагнул очень простую строку, такую как ++i;, потребовалось около 1-2 секунд, пока отладчик не перешел на следующую строку. Закрытие окна Call Stack или его сокрытие сразу исправили задержку.