Ускоряем Visual Studio, часть III. Производительность IDE

После написания прошлой статьи, я понял, что у меня осталось еще некоторое количество информации, не относящейся к ускорению компиляции решения, но позволяющей несколько повысить производительность самой Visual Studio в процессе работы над кодом. А поскольку мы все-таки работаем над кодом изрядное количество времени, намного приятнее делать это в быстро работающей IDE. К сожалению, в этой статье не будет графиков, поскольку весьма тяжело измерить, насколько стало быстрее открываться меню или какое-то окно. Тем не менее, я надеюсь, что кто-то может найти для себя в этих советах что-то ценное и сэкономить себе немного времени.
Добавьте /nosplash к ярлыку запуска Visual Studio
Честно говоря, время запуска уменьшится не сильно, но психологически будет казаться, что Студия грузится быстрее.
Отключите кнопку F1
Это делается в «Environment->Keyboard». Вы ведь всё-равно не пользуетесь этой кнопкой, правда? А если случайно нажмёте, то, в зависимости от версии VS начнут открываться новые окна или запуститься браузер — всё это весьма долго.
Выключите анимацию
«Environment->General->Animate environment tools». Оставим анимацию фанатам красивостей. А мы ведь суровые программисты, нам ни к чему.
Отключите стартовую страницу
Она занимает время при запуске студии (в особенности, если лезет в Интернет за всякими новостями и советами). Отключается в «Environment->Startup».
Выключите «Track Active Item in Solution Explorer»
Неужели Вы правда ею пользуетесь? Если нет — выключите. Отключается в «Projects and Solutions»
Отключение разнообразных красивостей
Вот тут об этом написано детальнее. Отключается в «Environment->General->Visual experience»
Удаление лишних плагинов
Каждый плагин — это минус к производительности Студии. Если у Вас стоит что-то лишнее — удаляйте.
- Закройте Visual Studio.
- Удалите все .ncb файлы для Вашего решения.
- Удалите или переименуйте файл C:\Program Files\Microsoft Visual Studio 9.0\VC\vcpackages\feacp.dll (часть «9.0» отличается для разных версий Visual Studio).
Запуск Студии и компиляция проекта перед приходом на работу
На моей рабочей машине каждое утро, за час до моего прихода на работу запускается скрипт, закрывающий Visual Studio, делающий update кода из репозитория и по-новому запускающий Студию и компиляцию решения в ней. Приходя на работу я вижу откытую IDE, в которой сразу видно текущее состояние решения (компилируется\нет) и лог процедуры update, по которой понятно что именно изменилось со вчерашнего вечера. Всё это экономит мне 10 минут ежедневно.
Тормозит Visual Studio? Как ускорить Visual Studio
В этой статье мы рассмотрим основные решения как можно ускорить Visual Studio. Надеемся, что ваша среда разработки будет меньше тормозить после принятия нижеуказанных мер.
Важно: применяйте эти способы оптимизации Visual Studio последовательно, а не сразу все скопом. Если что-то перестало работать – то откатываем изменения. Итак.
Для ускорения работы Visual Studio следует сделать следующее:
- удалить каталоги
C:\Users\krintoul\AppData\Local\Temp\Temporary ASP.NET Files\siteName
C:\Users\krintoul\AppData\Local\Microsoft\WebSiteCache - отключить опцию Edit & Continue
Tools -> Options -> Debugging -> Edit & Continue - снять галочку “Use Hardware Graphics Acceleration If Available”
Tools -> Options -> Environment -> под Visual Experience - удалить все папки с названием “Temporary ASP.net”
- снять галочку “Аllow add in components to load”
Tools -> Options -> Environment - снять галочку “Automatically Check for Updates”
Tools -> Options -> Enviroments and Updates - использовать встроенные средства очистки диска для Windows и удаляйте временные файлы
- для VS 2015 RTM обновить ReSharper до 9.1.3
Мы развиваем платформу Falcon Space. Суть – создание функциональных личных кабинетов в веб с использованием только MS SQL (бизнес-логика) и Bootstrap (для стилизации). Вся разработка осуществляется через личный кабинет разработчика на портале.
Демостенд с примерами кода
Описание веб-платформы для технического специалиста
Опубликовано в ASP.NET Меткой ASP.NET MVC, Visual Studio, Оптимизация
- Демонстрация компонентов Falcon Space
- Смотреть демо веб-платформы Falcon Space
- Подпишись на наш видеоканал в Youtube
Оптимизация времени запуска Visual Studio
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
Система Visual Studio рассчитана на максимально быстрый и эффективный запуск. Однако некоторые расширения и окна инструментов Visual Studio могут негативно повлиять на время запуска при загрузке. Вы можете управлять поведением медленных расширений и окон инструментов в диалоговом окне Диспетчера производительности. Дополнительные сведения о повышении производительности см. в рекомендациях по оптимизации работы Visual Studio.
Поведение при запуске
Чтобы избежать задержек при запуске, Visual Studio загружает расширения по запросу. Это означает, что расширения открываются не сразу после запуска Visual Studio, а по мере необходимости. Кроме того, поскольку окна инструментов, оставшиеся открытыми в предыдущем сеансе Visual Studio, могут увеличить время запуска, Visual Studio более разумно открывает окна инструментов, чтобы исключить влияние на время запуска.
Если Visual Studio обнаружит медленный запуск, появится всплывающее сообщение с предупреждением, указывающим на расширение или окно инструмента, которое является причиной замедления. Сообщение содержит ссылку на диалоговое окно Диспетчера производительности. Вы также можете получить доступ к этому диалоговому окне, выбрав в строке меню справку >по диспетчеру производительности Visual Studio.

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

- Откройте диалоговое окно диспетчера производительности, выбрав «Справка >по диспетчеру производительности Visual Studio» в строке меню. Если расширение замедляет запуск Visual Studio, загрузку решения или ввод, расширение отображается в диалоговом окне Диспетчера производительности в разделе «Запуск расширений>» (или «Загрузка решения» или «Ввод).
- Выберите расширение, которое нужно отключить, и нажмите кнопку Отключить.
Вы всегда можете повторно включить расширение для будущих сеансов с помощью диспетчера расширений или диалогового окна Диспетчера производительности Visual Studio.
Изменение параметров окна инструментов для ускорения запуска

- Откройте диалоговое окно диспетчера производительности, выбрав «Справка >по диспетчеру производительности Visual Studio» в строке меню. Если окно инструментов замедляет запуск Visual Studio, окно инструментов отображается в диалоговом окне диспетчера производительности в разделе запуска Windows>tool.
- Выберите окно инструментов, поведение которого хотите изменить.
- Выберите один из следующих трех параметров:
- Использовать поведение по умолчанию. Поведение по умолчанию для окна инструментов. Сохранение этого параметра не улучшит производительность запуска.
- Не показывать окно при запуске. При выборе этого параметра указанное окно инструментов всегда будет закрытым при открытии Visual Studio, даже если оно было оставлено открытым в предыдущем сеансе. При необходимости вы можете открыть окно инструментов из соответствующего меню.
- Автоматически скрывать окно при запуске. Если окно инструментов было оставлено открытым в предыдущем сеансе, этот параметр позволит сворачивать группу окон инструментов при запуске, чтобы не открывать окно инструментов. Этот вариант удобен при частом использовании окна инструментов. При этом окно по-прежнему доступно, но больше не оказывает негативное влияние на время запуска Visual Studio.
Некоторые более ранние версии Visual Studio имели функцию с именем упрощенной загрузки решения. В текущих версиях крупные решения, содержащие управляемый код, загружаются значительно быстрее, чем раньше, даже без функции загрузки упрощенного решения.
Связанный контент
- Оптимизация производительности Visual Studio
- Советы и рекомендации по улучшению работы Visual Studio
Советы и рекомендации по улучшению работы Visual Studio
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
Рекомендации по повышению производительности Visual Studio предназначены для редких ситуаций, когда может возникать нехватка памяти. В таких случаях можно оптимизировать определенные компоненты Visual Studio, которые могут не использоваться. Следующие советы не предназначены в качестве общих рекомендаций.
Если при работе с продуктом у вас возникают затруднения из-за проблем с памятью, свяжитесь с нами через средство обратной связи.
Использование 64-разрядной ОС
При переходе с 32-разрядной на 64-разрядную версию Windows вы увеличиваете объем виртуальной памяти, доступной Visual Studio, с 2 до 4 ГБ. Обновление 64-разрядной операционной системы позволяет Visual Studio обрабатывать большие рабочие нагрузки.
Дополнительные сведения см. в разделе «Ограничения памяти» для выпусков Windows и Windows Server.
Visual Studio 2022 в Windows — это 64-разрядное приложение. Более ранние версии — 32-разрядная версия.
Отключение автоматического восстановления файлов
Visual Studio автоматически повторно открывает документы, открытые во время предыдущего сеанса. Это действие автоматического восстановления файлов может продлить время загрузки решения до 30 % или более в зависимости от типа проекта и открытых документов. Конструкторы, такие как Windows Forms и XAML, а также некоторые файлы JavaScript и TypeScript, могут быть медленно открыты.
Visual Studio уведомляет вас в желтой полосе, когда автоматическое восстановление документов приводит к замедлению загрузки решения. Вы можете отключить автоматическое повторное открытие файлов, выполнив следующие действия.
- Выберите пункты меню Сервис>Параметры, чтобы открыть диалоговое окно Параметры.
- На странице Проекты и решения>Общие отмените выбор пункта Повторно открыть документы при загрузке решения.
Если отключить автоматическое восстановление файлов, быстро перейти к нужным файлам можно с помощью одной из команд Перейти к:
- Чтобы использовать общие функции Перейти к, выберите Изменить>Перейти к>Перейти ко всем или нажмите CTRL+T.
- Перейдите к последней правке в решении, выбрав Изменить>Перейти к>Перейти к последнему изменению или нажав CTRL+SHIFT+BACKSPACE.
- Используйте Перейти к последнему файлу, чтобы просмотреть список недавно просмотренных файлов в решении. Выберите Изменить>Перейти к>Перейти к последнему файлу или нажмите CTRL+1, CTRL+R.
Настройка параметров отладки
Если во время сеансов отладки обычно не хватает памяти, можно оптимизировать производительность, изменив одну или несколько конфигураций.
- Включение режима «Только мой код» Простейшая оптимизация заключается в том, чтобы включить функцию Только мой код, которая загружает только символы для проекта. Включение этой функции может привести к значительной экономии памяти при отладке управляемых приложений (.NET). Для некоторых типов проектов этот параметр уже включен по умолчанию. Чтобы включить функцию Только мой код, выберите Сервис>Параметры>Отладка>Общие и затем Включить только мой код.
- Указание символов для загрузки При отладке машинного кода для загрузки файлов символов (.pdb) требуется большой объем памяти. Вы можете настроить параметры отладочных символов для экономии памяти. Как правило, решение настраивается для загрузки только модулей из проекта. Чтобы указать загрузку символов, выберите Сервис>Параметры>Отладка>Символы. Задайте параметр Только указанные модули вместо Все модули и затем укажите, какие модули нужно загружать. Во время отладки также можно щелкнуть определенные модули правой кнопкой мыши в окне Модули, чтобы явно включить модуль в загрузку символов. (Чтобы открыть окно во время отладки, выберите Отладка>Окна>Модули.) Дополнительные сведения см. в разделе «Указание символов и исходных файлов» в отладчике.
- Отключение средств диагностики Рекомендуется отключить профилирование ЦП после использования. Эта функция может потреблять очень много ресурсов. После включения профилирования ЦП это состояние распространяется и на все последующие сеансы отладки, поэтому его следует отключать явным образом. Вы можете сохранить некоторые ресурсы, отключив средства диагностики во время отладки, если вам не нужны предоставленные функции. Для отключить Средства диагностики, запустите сеанс отладки, выберите Средства>Параметры>Отладка>Общие и снимите флажок Включить средства диагностики при отладке. Дополнительные сведения см. в разделе «Средства профилирования».
Отключение инструментов и расширений
Для повышения производительности можно отключить некоторые инструменты или расширения.
Часто проблемы производительности можно выявить, отключая расширения по одному и проверяя уровень производительности.
Управляемые службы языка (Roslyn)
Сведения о производительности .NET Compiler Platform («Roslyn») см. в статье Особенности производительности для крупных решений.
- Отключение CodeLens Visual Studio выполняет задачу Найти все ссылки для каждого метода при его отображении. CodeLens предоставляет такие функции, как встроенное отображение числа ссылок. Эта работа выполняется в отдельном процессе, например ServiceHub.RoslynCodeAnalysisService32. В крупных решениях или системах с небольшим объемом ресурсов эта функция может значительно снижать производительность. В случае возникновения проблем с памятью, например при загрузке большого решения на компьютере с 4 ГБ памяти или высокой загрузки ЦП при выполнении этого процесса, попробуйте отключить CodeLens для высвобождения ресурсов. Чтобы отключить CodeLens, выберите Сервис>Параметры>Текстовый редактор>Все языки>CodeLens и отмените выбор данной функции. Дополнительные сведения см. в разделе «Поиск изменений кода» и других журналов с помощью CodeLens.
Другие инструменты и расширения
- Отключение расширений Расширения — это дополнительные программные компоненты в Visual Studio, которые предоставляют новые или расширяют имеющиеся функциональные возможности. Расширения часто могут выступать источником проблем с памятью. При возникновении подобных проблем попробуйте отключать расширения по одному за раз, чтобы оценить, как это влияет на сценарий или рабочий процесс. Чтобы отключить расширения, перейдите в меню Расширение>Управление расширениями и отключите нужное расширение.
- Отключение режима карты В режиме карты на полосе прокрутки показывается миниатюрное изображение строк кода. Режим карты включен по умолчанию. Чтобы отключить режим карты, последовательно выберите Инструменты>Параметры>Текстовый редактор>Все языки>Полосы прокрутки, а затем в разделе Поведение снимите флажок Использовать режим карты для вертикальной полосы прокрутки.
- Отключение переноса по словам При включенном переносе по словам отображается часть длинной строки кода, выступающая за пределы текущей ширины окна редактора кода. Перенос по словам включен по умолчанию. Чтобы отключить оболочку слов для проекта, над которым вы работаете, перейдите к разделу «Изменить>расширенную >оболочкуword». (Этот параметр можно переключать с помощью одних и тех же команд меню.) Чтобы отключить перенос по словам для всех проектов, последовательно выберите в меню пункты Инструменты>Параметры>Общие>Текстовый редактор>Все языки>Общие, а затем в разделе Параметры снимите флажок Перенос по словам.
- Отключение конструктора XAML Конструктор XAML по умолчанию включен, но потребляет ресурсы только при открытии файла .xaml. Если вы работаете с XAML-файлами, но не хотите использовать функции конструктора, отключите эту функцию, чтобы освободить некоторую память. Чтобы отключить конструктор XAML, последовательно выберите в меню пункты Инструменты>Параметры>Конструктор XAML>Включить конструктор XAML, а затем снимите этот флажок.
- Удаление рабочих нагрузок Если вы не собираетесь использовать определенные рабочие нагрузки, удалите их с помощью установщика Visual Studio. Это позволяет оптимизировать расходы ресурсов при запуске и выполнении за счет пропуска ненужных пакетов и сборок.
- Добавление неотслеживаемых файлов в локальный файл .gitignore Visual Studio выполняет команду Git git status для неотслеживаемых файлов, чтобы вам было удобно добавлять новые файлы в репозиторий. При наличии большого количества неотслеживаемых файлов git status может потреблять большой объем памяти. Чтобы сделать эти файлы игнорируемыми и повысить производительность git status , можно добавить такие файлы или папки в локальный файл .gitignore. Чтобы получить доступ к файлу, выберите Git>Параметры>Параметры репозитория Git. Затем в разделе файлов Git выберите «Добавить «, чтобы создать файл gitignore, или выберите «Изменить «, если у вас уже есть.
- Функция фиксации графа в инструментах GitНовые возможности в Visual Studio 2022 версии 17.2. Если при просмотре репозитория Git или журнала ветви в Visual Studio возникают задержки, вы можете воспользоваться новой функцией фиксации графа. Чтобы использовать эту функцию, необходимо скачать и установить Visual Studio 2022. Дополнительные сведения о функции фиксации графа см. в этой записи блога.
Принудительная сборка мусора
Среда CLR использует систему управления памятью, подразумевающую сборку мусора. В этой системе память иногда используется объектами, которые больше не нужны. Это временное состояние; Сборщик мусора освобождает эту память на основе его производительности и эвристики использования ресурсов. Вы можете заставить среду CLR собрать всю неиспользуемую память, используя сочетание клавиш в Visual Studio. Если в диспетчере задач возникает значительное количество мусора, ожидающего сборки мусора, вы увидите, что использование памяти процесса devenv.exe удаляется в диспетчере задач. Потребность в этом методе возникает довольно редко. Тем не менее после завершения операции, потребляющей много ресурсов (такой как полная сборка, сеанс отладки или событие открытия решения), он может помочь определить объем памяти, действительно используемый процессом. Так как Visual Studio смешанный (управляемый & машинный код), иногда это возможно для собственного распределителя и сборщика мусора для конкуренции за ограниченные ресурсы памяти. В условиях высокого использования памяти это может помочь принудительно запустить сборщик мусора.
Чтобы принудительно выполнить сборку мусора, используйте это сочетание клавиш: CTRL+ ALT +SHIFT+F12, CTRL+ ALT SHIFT+F12 (дважды нажмите клавишу ALT).+
Если принудительная сборка мусора надежно делает работу сценария, отправьте отчет с помощью средства обратной связи Visual Studio, так как это поведение, скорее всего, будет ошибкой.
Подробное описание сборщика мусора CLR см. в статье Основы сборки мусора.
Связанный контент
Ускоряем Visual Studio, часть III. Производительность IDE

После написания прошлой статьи, я понял, что у меня осталось еще некоторое количество информации, не относящейся к ускорению компиляции решения, но позволяющей несколько повысить производительность самой Visual Studio в процессе работы над кодом. А поскольку мы все-таки работаем над кодом изрядное количество времени, намного приятнее делать это в быстро работающей IDE. К сожалению, в этой статье не будет графиков, поскольку весьма тяжело измерить, насколько стало быстрее открываться меню или какое-то окно. Тем не менее, я надеюсь, что кто-то может найти для себя в этих советах что-то ценное и сэкономить себе немного времени.
Добавьте /nosplash к ярлыку запуска Visual Studio
Честно говоря, время запуска уменьшится не сильно, но психологически будет казаться, что Студия грузится быстрее.
Отключите кнопку F1
Это делается в «Environment->Keyboard». Вы ведь всё-равно не пользуетесь этой кнопкой, правда? А если случайно нажмёте, то, в зависимости от версии VS начнут открываться новые окна или запуститься браузер — всё это весьма долго.
Выключите анимацию
«Environment->General->Animate environment tools». Оставим анимацию фанатам красивостей. А мы ведь суровые программисты, нам ни к чему.
Отключите стартовую страницу
Она занимает время при запуске студии (в особенности, если лезет в Интернет за всякими новостями и советами). Отключается в «Environment->Startup».
Выключите «Track Active Item in Solution Explorer»
Неужели Вы правда ею пользуетесь? Если нет — выключите. Отключается в «Projects and Solutions»
Отключение разнообразных красивостей
Вот тут об этом написано детальнее. Отключается в «Environment->General->Visual experience»
Удаление лишних плагинов
Каждый плагин — это минус к производительности Студии. Если у Вас стоит что-то лишнее — удаляйте.
- Закройте Visual Studio.
- Удалите все .ncb файлы для Вашего решения.
- Удалите или переименуйте файл C:\Program Files\Microsoft Visual Studio 9.0\VC\vcpackages\feacp.dll (часть «9.0» отличается для разных версий Visual Studio).
Запуск Студии и компиляция проекта перед приходом на работу
На моей рабочей машине каждое утро, за час до моего прихода на работу запускается скрипт, закрывающий Visual Studio, делающий update кода из репозитория и по-новому запускающий Студию и компиляцию решения в ней. Приходя на работу я вижу откытую IDE, в которой сразу видно текущее состояние решения (компилируется\нет) и лог процедуры update, по которой понятно что именно изменилось со вчерашнего вечера. Всё это экономит мне 10 минут ежедневно.
Тормозит Visual Studio? Как ускорить Visual Studio
В этой статье мы рассмотрим основные решения как можно ускорить Visual Studio. Надеемся, что ваша среда разработки будет меньше тормозить после принятия нижеуказанных мер.
Важно: применяйте эти способы оптимизации Visual Studio последовательно, а не сразу все скопом. Если что-то перестало работать – то откатываем изменения. Итак.
Для ускорения работы Visual Studio следует сделать следующее:
- удалить каталоги
C:\Users\krintoul\AppData\Local\Temp\Temporary ASP.NET Files\siteName
C:\Users\krintoul\AppData\Local\Microsoft\WebSiteCache - отключить опцию Edit & Continue
Tools -> Options -> Debugging -> Edit & Continue - снять галочку “Use Hardware Graphics Acceleration If Available”
Tools -> Options -> Environment -> под Visual Experience - удалить все папки с названием “Temporary ASP.net”
- снять галочку “Аllow add in components to load”
Tools -> Options -> Environment - снять галочку “Automatically Check for Updates”
Tools -> Options -> Enviroments and Updates - использовать встроенные средства очистки диска для Windows и удаляйте временные файлы
- для VS 2015 RTM обновить ReSharper до 9.1.3
Мы развиваем платформу Falcon Space. Суть – создание функциональных личных кабинетов в веб с использованием только MS SQL (бизнес-логика) и Bootstrap (для стилизации). Вся разработка осуществляется через личный кабинет разработчика на портале.
Демостенд с примерами кода
Описание веб-платформы для технического специалиста
Опубликовано в ASP.NET Меткой ASP.NET MVC, Visual Studio, Оптимизация
- Демонстрация компонентов Falcon Space
- Смотреть демо веб-платформы Falcon Space
- Подпишись на наш видеоканал в Youtube
Оптимизация времени запуска Visual Studio
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
Система Visual Studio рассчитана на максимально быстрый и эффективный запуск. Однако некоторые расширения и окна инструментов Visual Studio могут негативно повлиять на время запуска при загрузке. Вы можете управлять поведением медленных расширений и окон инструментов в диалоговом окне Диспетчера производительности. Дополнительные сведения о повышении производительности см. в рекомендациях по оптимизации работы Visual Studio.
Поведение при запуске
Чтобы избежать задержек при запуске, Visual Studio загружает расширения по запросу. Это означает, что расширения открываются не сразу после запуска Visual Studio, а по мере необходимости. Кроме того, поскольку окна инструментов, оставшиеся открытыми в предыдущем сеансе Visual Studio, могут увеличить время запуска, Visual Studio более разумно открывает окна инструментов, чтобы исключить влияние на время запуска.
Если Visual Studio обнаружит медленный запуск, появится всплывающее сообщение с предупреждением, указывающим на расширение или окно инструмента, которое является причиной замедления. Сообщение содержит ссылку на диалоговое окно Диспетчера производительности. Вы также можете получить доступ к этому диалоговому окне, выбрав в строке меню справку >по диспетчеру производительности Visual Studio.

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

- Откройте диалоговое окно диспетчера производительности, выбрав «Справка >по диспетчеру производительности Visual Studio» в строке меню. Если расширение замедляет запуск Visual Studio, загрузку решения или ввод, расширение отображается в диалоговом окне Диспетчера производительности в разделе «Запуск расширений>» (или «Загрузка решения» или «Ввод).
- Выберите расширение, которое нужно отключить, и нажмите кнопку Отключить.
Вы всегда можете повторно включить расширение для будущих сеансов с помощью диспетчера расширений или диалогового окна Диспетчера производительности Visual Studio.
Изменение параметров окна инструментов для ускорения запуска

- Откройте диалоговое окно диспетчера производительности, выбрав «Справка >по диспетчеру производительности Visual Studio» в строке меню. Если окно инструментов замедляет запуск Visual Studio, окно инструментов отображается в диалоговом окне диспетчера производительности в разделе запуска Windows>tool.
- Выберите окно инструментов, поведение которого хотите изменить.
- Выберите один из следующих трех параметров:
- Использовать поведение по умолчанию. Поведение по умолчанию для окна инструментов. Сохранение этого параметра не улучшит производительность запуска.
- Не показывать окно при запуске. При выборе этого параметра указанное окно инструментов всегда будет закрытым при открытии Visual Studio, даже если оно было оставлено открытым в предыдущем сеансе. При необходимости вы можете открыть окно инструментов из соответствующего меню.
- Автоматически скрывать окно при запуске. Если окно инструментов было оставлено открытым в предыдущем сеансе, этот параметр позволит сворачивать группу окон инструментов при запуске, чтобы не открывать окно инструментов. Этот вариант удобен при частом использовании окна инструментов. При этом окно по-прежнему доступно, но больше не оказывает негативное влияние на время запуска Visual Studio.
Некоторые более ранние версии Visual Studio имели функцию с именем упрощенной загрузки решения. В текущих версиях крупные решения, содержащие управляемый код, загружаются значительно быстрее, чем раньше, даже без функции загрузки упрощенного решения.
Связанный контент
- Оптимизация производительности Visual Studio
- Советы и рекомендации по улучшению работы Visual Studio
Советы и рекомендации по улучшению работы Visual Studio
Область применения:
Visual Studio Visual Studio для Mac
Visual Studio Code ![]()
Рекомендации по повышению производительности Visual Studio предназначены для редких ситуаций, когда может возникать нехватка памяти. В таких случаях можно оптимизировать определенные компоненты Visual Studio, которые могут не использоваться. Следующие советы не предназначены в качестве общих рекомендаций.
Если при работе с продуктом у вас возникают затруднения из-за проблем с памятью, свяжитесь с нами через средство обратной связи.
Использование 64-разрядной ОС
При переходе с 32-разрядной на 64-разрядную версию Windows вы увеличиваете объем виртуальной памяти, доступной Visual Studio, с 2 до 4 ГБ. Обновление 64-разрядной операционной системы позволяет Visual Studio обрабатывать большие рабочие нагрузки.
Дополнительные сведения см. в разделе «Ограничения памяти» для выпусков Windows и Windows Server.
Visual Studio 2022 в Windows — это 64-разрядное приложение. Более ранние версии — 32-разрядная версия.
Отключение автоматического восстановления файлов
Visual Studio автоматически повторно открывает документы, открытые во время предыдущего сеанса. Это действие автоматического восстановления файлов может продлить время загрузки решения до 30 % или более в зависимости от типа проекта и открытых документов. Конструкторы, такие как Windows Forms и XAML, а также некоторые файлы JavaScript и TypeScript, могут быть медленно открыты.
Visual Studio уведомляет вас в желтой полосе, когда автоматическое восстановление документов приводит к замедлению загрузки решения. Вы можете отключить автоматическое повторное открытие файлов, выполнив следующие действия.
- Выберите пункты меню Сервис>Параметры, чтобы открыть диалоговое окно Параметры.
- На странице Проекты и решения>Общие отмените выбор пункта Повторно открыть документы при загрузке решения.
Если отключить автоматическое восстановление файлов, быстро перейти к нужным файлам можно с помощью одной из команд Перейти к:
- Чтобы использовать общие функции Перейти к, выберите Изменить>Перейти к>Перейти ко всем или нажмите CTRL+T.
- Перейдите к последней правке в решении, выбрав Изменить>Перейти к>Перейти к последнему изменению или нажав CTRL+SHIFT+BACKSPACE.
- Используйте Перейти к последнему файлу, чтобы просмотреть список недавно просмотренных файлов в решении. Выберите Изменить>Перейти к>Перейти к последнему файлу или нажмите CTRL+1, CTRL+R.
Настройка параметров отладки
Если во время сеансов отладки обычно не хватает памяти, можно оптимизировать производительность, изменив одну или несколько конфигураций.
- Включение режима «Только мой код» Простейшая оптимизация заключается в том, чтобы включить функцию Только мой код, которая загружает только символы для проекта. Включение этой функции может привести к значительной экономии памяти при отладке управляемых приложений (.NET). Для некоторых типов проектов этот параметр уже включен по умолчанию. Чтобы включить функцию Только мой код, выберите Сервис>Параметры>Отладка>Общие и затем Включить только мой код.
- Указание символов для загрузки При отладке машинного кода для загрузки файлов символов (.pdb) требуется большой объем памяти. Вы можете настроить параметры отладочных символов для экономии памяти. Как правило, решение настраивается для загрузки только модулей из проекта. Чтобы указать загрузку символов, выберите Сервис>Параметры>Отладка>Символы. Задайте параметр Только указанные модули вместо Все модули и затем укажите, какие модули нужно загружать. Во время отладки также можно щелкнуть определенные модули правой кнопкой мыши в окне Модули, чтобы явно включить модуль в загрузку символов. (Чтобы открыть окно во время отладки, выберите Отладка>Окна>Модули.) Дополнительные сведения см. в разделе «Указание символов и исходных файлов» в отладчике.
- Отключение средств диагностики Рекомендуется отключить профилирование ЦП после использования. Эта функция может потреблять очень много ресурсов. После включения профилирования ЦП это состояние распространяется и на все последующие сеансы отладки, поэтому его следует отключать явным образом. Вы можете сохранить некоторые ресурсы, отключив средства диагностики во время отладки, если вам не нужны предоставленные функции. Для отключить Средства диагностики, запустите сеанс отладки, выберите Средства>Параметры>Отладка>Общие и снимите флажок Включить средства диагностики при отладке. Дополнительные сведения см. в разделе «Средства профилирования».
Отключение инструментов и расширений
Для повышения производительности можно отключить некоторые инструменты или расширения.
Часто проблемы производительности можно выявить, отключая расширения по одному и проверяя уровень производительности.
Управляемые службы языка (Roslyn)
Сведения о производительности .NET Compiler Platform («Roslyn») см. в статье Особенности производительности для крупных решений.
- Отключение CodeLens Visual Studio выполняет задачу Найти все ссылки для каждого метода при его отображении. CodeLens предоставляет такие функции, как встроенное отображение числа ссылок. Эта работа выполняется в отдельном процессе, например ServiceHub.RoslynCodeAnalysisService32. В крупных решениях или системах с небольшим объемом ресурсов эта функция может значительно снижать производительность. В случае возникновения проблем с памятью, например при загрузке большого решения на компьютере с 4 ГБ памяти или высокой загрузки ЦП при выполнении этого процесса, попробуйте отключить CodeLens для высвобождения ресурсов. Чтобы отключить CodeLens, выберите Сервис>Параметры>Текстовый редактор>Все языки>CodeLens и отмените выбор данной функции. Дополнительные сведения см. в разделе «Поиск изменений кода» и других журналов с помощью CodeLens.
Другие инструменты и расширения
- Отключение расширений Расширения — это дополнительные программные компоненты в Visual Studio, которые предоставляют новые или расширяют имеющиеся функциональные возможности. Расширения часто могут выступать источником проблем с памятью. При возникновении подобных проблем попробуйте отключать расширения по одному за раз, чтобы оценить, как это влияет на сценарий или рабочий процесс. Чтобы отключить расширения, перейдите в меню Расширение>Управление расширениями и отключите нужное расширение.
- Отключение режима карты В режиме карты на полосе прокрутки показывается миниатюрное изображение строк кода. Режим карты включен по умолчанию. Чтобы отключить режим карты, последовательно выберите Инструменты>Параметры>Текстовый редактор>Все языки>Полосы прокрутки, а затем в разделе Поведение снимите флажок Использовать режим карты для вертикальной полосы прокрутки.
- Отключение переноса по словам При включенном переносе по словам отображается часть длинной строки кода, выступающая за пределы текущей ширины окна редактора кода. Перенос по словам включен по умолчанию. Чтобы отключить оболочку слов для проекта, над которым вы работаете, перейдите к разделу «Изменить>расширенную >оболочкуword». (Этот параметр можно переключать с помощью одних и тех же команд меню.) Чтобы отключить перенос по словам для всех проектов, последовательно выберите в меню пункты Инструменты>Параметры>Общие>Текстовый редактор>Все языки>Общие, а затем в разделе Параметры снимите флажок Перенос по словам.
- Отключение конструктора XAML Конструктор XAML по умолчанию включен, но потребляет ресурсы только при открытии файла .xaml. Если вы работаете с XAML-файлами, но не хотите использовать функции конструктора, отключите эту функцию, чтобы освободить некоторую память. Чтобы отключить конструктор XAML, последовательно выберите в меню пункты Инструменты>Параметры>Конструктор XAML>Включить конструктор XAML, а затем снимите этот флажок.
- Удаление рабочих нагрузок Если вы не собираетесь использовать определенные рабочие нагрузки, удалите их с помощью установщика Visual Studio. Это позволяет оптимизировать расходы ресурсов при запуске и выполнении за счет пропуска ненужных пакетов и сборок.
- Добавление неотслеживаемых файлов в локальный файл .gitignore Visual Studio выполняет команду Git git status для неотслеживаемых файлов, чтобы вам было удобно добавлять новые файлы в репозиторий. При наличии большого количества неотслеживаемых файлов git status может потреблять большой объем памяти. Чтобы сделать эти файлы игнорируемыми и повысить производительность git status , можно добавить такие файлы или папки в локальный файл .gitignore. Чтобы получить доступ к файлу, выберите Git>Параметры>Параметры репозитория Git. Затем в разделе файлов Git выберите «Добавить «, чтобы создать файл gitignore, или выберите «Изменить «, если у вас уже есть.
- Функция фиксации графа в инструментах GitНовые возможности в Visual Studio 2022 версии 17.2. Если при просмотре репозитория Git или журнала ветви в Visual Studio возникают задержки, вы можете воспользоваться новой функцией фиксации графа. Чтобы использовать эту функцию, необходимо скачать и установить Visual Studio 2022. Дополнительные сведения о функции фиксации графа см. в этой записи блога.
Принудительная сборка мусора
Среда CLR использует систему управления памятью, подразумевающую сборку мусора. В этой системе память иногда используется объектами, которые больше не нужны. Это временное состояние; Сборщик мусора освобождает эту память на основе его производительности и эвристики использования ресурсов. Вы можете заставить среду CLR собрать всю неиспользуемую память, используя сочетание клавиш в Visual Studio. Если в диспетчере задач возникает значительное количество мусора, ожидающего сборки мусора, вы увидите, что использование памяти процесса devenv.exe удаляется в диспетчере задач. Потребность в этом методе возникает довольно редко. Тем не менее после завершения операции, потребляющей много ресурсов (такой как полная сборка, сеанс отладки или событие открытия решения), он может помочь определить объем памяти, действительно используемый процессом. Так как Visual Studio смешанный (управляемый & машинный код), иногда это возможно для собственного распределителя и сборщика мусора для конкуренции за ограниченные ресурсы памяти. В условиях высокого использования памяти это может помочь принудительно запустить сборщик мусора.
Чтобы принудительно выполнить сборку мусора, используйте это сочетание клавиш: CTRL+ ALT +SHIFT+F12, CTRL+ ALT SHIFT+F12 (дважды нажмите клавишу ALT).+
Если принудительная сборка мусора надежно делает работу сценария, отправьте отчет с помощью средства обратной связи Visual Studio, так как это поведение, скорее всего, будет ошибкой.
Подробное описание сборщика мусора CLR см. в статье Основы сборки мусора.