Настройка оптимизации visual studio

Обновлено: 07.07.2024

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

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

Использование 64-разрядной ОС

При переходе с 32-разрядной на 64-разрядную версию Windows вы увеличиваете объем виртуальной памяти, доступной Visual Studio, с 2 до 4 ГБ. Это позволяет Visual Studio обрабатывать значительно большие рабочие нагрузки даже несмотря на то, что это 32-разрядный процесс.

Visual Studio 2022 для Windows теперь является 64-разрядным приложением. Это означает, что вы можете открывать, изменять, запускать и отлаживать даже самые большие и сложные решения, не беспокоясь о нехватке памяти. Дополнительные сведения см. в записях блога, посвященных концепции Visual Studio 2022 и Visual Studio 2022, предварительная версия 1.

Отключение автоматического восстановления файлов

Visual Studio автоматически повторно открывает документы, открытые во время предыдущего сеанса. Это может увеличить время загрузки решения до 30 % или более в зависимости от типа проекта и открываемых документов. Конструкторы, например Windows Forms и XAML, и некоторые файлы JavaScript и typescript могут открываться медленно.

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

Выберите пункты меню Сервис > Параметры, чтобы открыть диалоговое окно Параметры.

На странице Проекты и решения > Общие отмените выбор пункта Повторно открыть документы при загрузке решения.

Если отключить автоматическое восстановление файлов, быстро перейти к нужным файлам можно с помощью одной из команд Перейти к:

Чтобы использовать общие функции Перейти к, выберите Изменить > Перейти к > Перейти ко всем или нажмите CTRL+T.

Перейдите к последней правке в решении, выбрав Изменить > Перейти к > Перейти к последнему изменению или нажав CTRL+SHIFT+BACKSPACE.

Используйте Перейти к последнему файлу, чтобы просмотреть список недавно просмотренных файлов в решении. Выберите Изменить > Перейти к > Перейти к последнему файлу или нажмите CTRL+1, CTRL+R.

Настройка параметров отладки

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

Включение функции "Только мой код"

Чтобы включить функцию Только мой код, выберите Сервис > Параметры > Отладка > Общие и затем Включить только мой код.

Указание символов для загрузки

При отладке машинного кода для загрузки файлов символов ( .pdb) требуется большой объем памяти. Вы можете настроить параметры отладочных символов для экономии памяти. Как правило, решение настраивается для загрузки только модулей из проекта.

Чтобы указать загрузку символов, выберите Сервис > Параметры > Отладка > Символы.

Задайте параметр Только указанные модули вместо Все модули и затем укажите, какие модули нужно загружать. Во время отладки также можно щелкнуть определенные модули правой кнопкой мыши в окне Модули, чтобы явно включить модуль в загрузку символов. (Чтобы открыть окно во время отладки, выберите Отладка > Окна > Модули.)

Дополнительные сведения см. в разделе Общие сведения о файлах символов.

Отключение средств диагностики

Рекомендуется отключить профилирование ЦП после использования. Эта функция может потреблять очень много ресурсов. После включения профилирования ЦП это состояние распространяется и на все последующие сеансы отладки, поэтому его следует отключать явным образом. Вы можете сэкономить ресурсы, отключив средства диагностики при отладке, если некоторые предоставляемые функции вам не нужны.

Для отключить Средства диагностики, запустите сеанс отладки, выберите Средства > Параметры > Отладка > Общие и снимите флажок Включить средства диагностики при отладке.

Дополнительные сведения см. в статье Средства профилирования.

Отключение инструментов и расширений

Для повышения производительности можно отключить некоторые инструменты или расширения.

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

Управляемые службы языка (Roslyn)

Отключение полного анализа решения

Отключение CodeLens

Visual Studio выполняет задачу Найти все ссылки для каждого метода при его отображении. CodeLens предоставляет такие функции, как встроенное отображение числа ссылок. Эта работа выполняется в отдельном процессе, например ServiceHub.RoslynCodeAnalysisService32. В крупных решениях или системах с небольшим объемом ресурсов эта функция может значительно снижать производительность. В случае возникновения проблем с памятью, например при загрузке большого решения на компьютере с 4 ГБ памяти или высокой загрузки ЦП при выполнении этого процесса, попробуйте отключить CodeLens для высвобождения ресурсов.

Чтобы отключить CodeLens, выберите Сервис > Параметры > Текстовый редактор > Все языки > CodeLens и отмените выбор данной функции.

Функция CodeLens доступна в выпусках Visual Studio Professional и Enterprise.

Другие инструменты и расширения

Отключение расширений

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

Чтобы отключить расширения, перейдите в раздел Сервис > Расширения и обновления и отключите нужное расширение.

Чтобы отключить расширения, перейдите в меню Расширение > Управление расширениями и отключите нужное расширение.

Отключение режима карты

В режиме карты на полосе прокрутки показывается миниатюрное изображение строк кода. Режим карты включен по умолчанию.

Чтобы отключить режим карты, последовательно выберите Инструменты > Параметры > Текстовый редактор > Все языки > Полосы прокрутки, а затем в разделе Поведение снимите флажок Использовать режим карты для вертикальной полосы прокрутки.

Отключение переноса по словам

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

Чтобы отключить перенос по словам для проекта, над которым вы работаете в текущий момент, последовательно выберите в меню пункты Правка > Дополнительно > Перенос по словам. (Этот параметр можно переключать с помощью одних и тех же команд меню.)

Чтобы отключить перенос по словам для всех проектов, последовательно выберите в меню пункты Инструменты > Параметры > Общие > Текстовый редактор > Все языки > Общие, а затем в разделе Параметры снимите флажок Перенос по словам.

Отключение конструктора XAML

Конструктор XAML по умолчанию включен, но потребляет ресурсы только при открытии файла .xaml. Если вы работаете с XAML-файлами, но не хотите использовать функциональные возможности конструктора, отключите его, чтобы освободить память.

Чтобы отключить конструктор XAML, последовательно выберите в меню пункты Инструменты > Параметры > Конструктор XAML > Включить конструктор XAML, а затем снимите этот флажок.

Удаление рабочих нагрузок

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

Добавление неотслеживаемых файлов в локальный файл .gitignore

Visual Studio выполняет команду Git git status для неотслеживаемых файлов, чтобы вам было удобно добавлять новые файлы в репозиторий. При наличии большого количества неотслеживаемых файлов git status может потреблять большой объем памяти. Чтобы сделать эти файлы игнорируемыми и повысить производительность git status , можно добавить такие файлы или папки в локальный файл .gitignore. Чтобы получить доступ к файлу, выберите Git > Параметры > Параметры репозитория Git. Затем в разделе файлы Git щелкните Добавить, чтобы создать файл .gitignore, или щелкните изменить, если он у вас уже есть.

Принудительная сборка мусора

Среда CLR использует систему управления памятью, подразумевающую сборку мусора. В этой системе память иногда используется объектами, которые больше не нужны. Это временное состояние — сборщик мусора освободит эту память, основываясь на своей эвристике производительности и использования ресурсов. Вы можете заставить среду CLR собрать всю неиспользуемую память, используя сочетание клавиш в Visual Studio. Если имеется значительный объем мусора, ожидающего сборки, то принудительная сборка мусора позволяет снизить использование памяти процессом devenv.exe в диспетчере задач. Потребность в этом методе возникает довольно редко. Тем не менее после завершения операции, потребляющей много ресурсов (такой как полная сборка, сеанс отладки или событие открытия решения), он может помочь определить объем памяти, действительно используемый процессом. Так как среда Visual Studio является смешанной (управляемый и машинный код), собственный распределитель и сборщик мусора могут конкурировать за ограниченные ресурсы памяти. В условиях высокого использования памяти это может помочь принудительно запустить сборщик мусора.

Чтобы принудительно запустить сборку мусора, используйте сочетание клавиш: CTRL+ALT+SHIFT+F12, CTRL+ALT+SHIFT+F12 (нажмите два раза).

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

Подробное описание сборщика мусора CLR см. в статье Основы сборки мусора.


После написания прошлой статьи, я понял, что у меня осталось еще некоторое количество информации, не относящейся к ускорению компиляции решения, но позволяющей несколько повысить производительность самой 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 минут ежедневно.

VsCode

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

Visual Studio Code стал популярен среди редакторов кода с момента своего появления. Я же долгое время сопротивлялась и не хотела его осваивать, причем не из-за возможной сложности, а скорее из-за того, что весь мой рабочий процесс уже был идеально отлажен в Sublime.

В то время, как процесс работы и написания кода оставался прежним вне зависимости от того, каким редактором я пользовалась — моя итоговая производительность резко снизилась в течение первой недели использования VSC.

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

В конце концов я вышла на привычный рабочий ритм и вряд ли когда-нибудь захочу использовать другой редактор. Visual Studio Code — это бесплатный, надежный и легковесный программный продукт, который также имеет крупное сообщество пользователей. Его можно причислить к списку самых удачных детищ Microsoft.

Ниже я указала 10 полезных рекомендаций, которые помогли мне и помогут вам ускорить процесс написания кода.

1. Сниппеты

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

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

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

Применение сниппетов также может помочь вам освоить новый фреймворк или библиотеку.

С Vue я еще не работала, но судя по указанным данным, набор Vue 2 Snippets от hollowtree был установлен более 900 000 раз, зарекомендовав себя как весьма многообещающее расширение.


Вы также можете загрузить расширение напрямую из VS Code, через указанную вкладку.

2. IntelliSense

Intellisense — это просто модное название автодополнения. Тем не менее работает оно гораздо продуманнее стандартного.

Преподносится эта функция как одна из существенно влияющих на продуктивность всего процесса работы в Visual Studio Code. Несмотря на это, многие пользователи редактора не применяют ее должным образом.

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

Например, когда вы начинаете прописывать объект, она выдает вам список потенциально подходящих методов. Чем больше знаков вы введете, тем точнее станет список предлагаемых вариантов, и вам останется только выбрать в нем подходящий. Если же вы не уверены, то документация с пояснениями по каждому методу также находится под рукой.

Для тех, кто приступает к работе с VS Code на базе знания Java или C++, эта возможность не станет новшеством. Я применяла нечто подобное, когда работала с Eclipse. Что же касается проектов в JavaScript — эта возможность, наряду с удобным перемещением между связанными элементами кода, существенно ускоряет процесс.

3. Встроенный терминал

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

Открыть терминал можно, нажав ctrl + ` .

Изначально он запускается с указанием корневой директории вашего рабочего пространства.

Для открытия еще одного терминала нажмите shift + ctrl + ` .


4. Просмотр ссылок и обновление имен

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

Для этого вам достаточно кликнуть правой кнопкой на выбранном методе, функции или ссылке, которую вы хотите отследить, и выбрать “просмотреть ссылки”. В качестве альтернативы можно выделить нужный элемент и использовать сочетание клавиш shift + F12 , но такой способ сработает только в среде Windows.

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

5. Форматирование и контроль технического долга

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

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

Несмотря на то, что инструменты форматирования могут помочь сократить число командных аргументов и улучшить внешний вид кода, они никак не устранят технический долг. Поэтому следующее расширение, которое я вам представлю контролирует технический долг.


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

6. Горячие клавиши

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

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

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

Их список вы можете посмотреть, нажав ctrl + k + s .


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

Здесь вы найдете расширения для перенастройки встроенных горячих клавиш в Visual Studio Code.

7. Режим дзен

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

Существует несколько различных вариантов это сделать. Для начала нужно заглянуть в раздел горячих клавиш.

В моем случае по умолчанию установлена команда ctrl + z и k . То есть сначала я нажимаю ctrl + z , а потом k , а не все три вместе.

8. Git

VSC поддерживает git и позволяет производить все привычные коммиты, не выходя из его интерфейса. Стейдж, коммит, откат, комментарии — эти и другие возможности, доступные из командной строки, можно задействовать прямо из редактора.

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

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

9. Дебаггер

Visual Studio Code оснащен дебаггером, который позволяет вам назначать точки прерывания выполнения кода для тех мест, где вы хотите проанализировать происходящее более подробно.

Процесс дебаггинга подразумевает гораздо больше, чем просто проверку посредством консоли разработчика в Chrome. К примеру, вы предполагаете в каком месте могла возникнуть проблема: в определенной строке, функции или методе.

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


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

Вы также можете открыть консоль и просмотреть текущее состояние, используя соответствующие запросы.

По умолчанию VSC запускает дебаггер на основе Node.js, но вы также можете запустить его на базе самого Chrome. В обычном режиме у вас нет возможности приостанавливать выполнение вашего приложения, но с помощью дебаггера вы с легкостью сможете это сделать, назначив точки прерывания.

В то же время вы получаете возможность более пристально оценить различные элементы кода и их состояния в тех или иных местах.

10. Live Share

Пробовали ли вы когда-нибудь редактировать Google Docs совместно с кем-нибудь еще? Live share работает по тому же принципу, только связь устанавливается через ваш аккаунт Azure или GitHub.

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

Заключение

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

Visual Studio Code — это поистине фантастическое решение из разряда бесплатного и доступного программного обеспечения, которое способно существенно помочь вам в процессе написания кода. Будет очень полезным окунуться в освоение его особенностей, чтобы повысить показатели вашей продуктивности.

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

Начать оптимизацию

Чтобы избежать длительного времени запуска, Visual Studio 2017 использует метод загрузки расширений по запросу. Чтобы Это означает, что расширение не будет открываться сразу после запуска Visual Studio, а будет открываться по мере необходимости. Чтобы Кроме того, поскольку сохранение окна инструмента открытым в предыдущем сеансе Visual Studio замедлит время запуска, Visual Studio открывает окно инструмента более разумным способом, чтобы не влиять на время запуска.


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

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

Откройте диалоговое окно «Управление производительностью Visual Studio», выбрав «Справка»> «Управление производительностью Visual Studio» в строке меню.

Если расширение замедляет запуск Visual Studio, загрузку решения или набор текста, расширение будет отображаться в разделе «Управление производительностью Visual Studio» в разделе «Расширения»> «Запуск» (или «Загрузка решения» или «Тип»). Диалоговое окно.


Выберите расширение, которое хотите отключить, а затем нажмите кнопку «Отключить».

Вы всегда можете использовать диалоги Extension Manager или Manage Visual Studio Performance, чтобы повторно включить расширения для будущих сеансов.

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

Откройте диалоговое окно «Управление производительностью Visual Studio», выбрав «Справка»> «Управление производительностью Visual Studio» в строке меню.

Если окно инструмента замедляет запуск Visual Studio, это окно инструмента будет отображаться в диалоговом окне «Управление производительностью Visual Studio» в разделе «Окно инструментов»> «Запуск».

Выберите окно инструмента, поведение которого вы хотите изменить.

Выберите один из следующих трех вариантов:

Использовать поведение по умолчанию: поведение окна инструментов по умолчанию. Чтобы Выбор этого параметра не улучшит производительность при запуске.

Окно не отображается при запуске: при открытии Visual Studio указанное окно инструмента всегда будет закрыто, даже если оно остается открытым в предыдущем сеансе. Чтобы При необходимости вы можете открыть окно инструментов из соответствующего меню.

Автоматически скрывать окно при запуске: если окно инструментов остается открытым в предыдущем сеансе, этот параметр сворачивает группу окон инструментов при запуске, чтобы избежать инициализации окна инструментов. Чтобы Если вы часто используете окна инструментов, то это хороший выбор. Чтобы Поскольку окно инструмента по-прежнему доступно, но оно больше не будет оказывать негативного влияния на время запуска Visual Studio.


Обновление до Visual Studio 2017 версии 15.6 или выше

Если вы в настоящее время используете Visual Studio 2017, убедитесь, что у вас версия 15.6 или выше. Чтобы Данные показывают, что в версии 15.6 скорость загрузки решения может быть увеличена до двух-трех раз.

оборудование

Если вы подумываете об обновлении оборудования, твердотельные накопители (SSD) оказывают большее влияние на производительность, чем дополнительная оперативная память или более быстрые процессоры.

Чтобы добавить SSD, для лучшей производительности Windows должна быть установлена ​​на SSD вместо жесткого диска (HDD). Чтобы Расположение диска решения Visual Studio не кажется таким важным.

Также не запускайте решение с USB-накопителя. Чтобы Скопируйте его на HDD или SSD.

Используйте 64-битную операционную систему

Отключить автоматическое восстановление файлов

Visual Studio автоматически повторно откроет документ, который был открыт в предыдущем сеансе. Чтобы Это может увеличить время, необходимое для загрузки решения, на 30% и более, в зависимости от типа проекта и открытых документов. Чтобы Такие конструкторы, как Windows Forms и XAML, а также некоторые файлы JavaScript и машинописного текста открываются медленно.

Когда автоматическое восстановление документа приводит к медленной загрузке решения, Visual Studio отображает уведомление с желтой полосой. Чтобы Вы можете отключить автоматическое повторное открытие файла, выполнив следующие действия:

Выберите «Инструменты»> «Параметры», чтобы открыть диалоговое окно «Параметры».

На странице «Проекты и решения»> «Общие» снимите флажок «Повторно открыть документ загрузки решения».

Если автоматическое восстановление файлов запрещено, используйте либоИдти кКоманда для быстрого перехода к открываемому файлу:

Для обычной функции «Перейти к» выберите «Правка»> «Перейти»> «Перейти ко всем» (или нажмите Ctrl + T).

В Visual Studio 2017 версии 15.8 и более поздних вы можете использовать «Правка»> «Перейти»> «Перейти к последней измененной позиции» (или нажать Ctrl + Shift + Backspace), чтобы перейти к последнему измененному в решении. должность.

В Visual Studio 2017 версии 15.8 и более поздних используйте «Перейти к недавно использованным файлам», чтобы просмотреть список недавно использованных файлов в решении. Чтобы Выберите «Правка»> «Перейти»> «Перейти к недавно использованным» (или нажмите Ctrl + 1, Ctrl + R).

Настроить параметры отладки

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

Включить "Только мой код"

Чтобы включить «Только мой код», выберите «Инструменты»> «Параметры»> «Отладка»> «Общие», а затем выберите «Включить только мой код».

Укажите символ для загрузки

Для встроенной отладки загрузка файлов символов (.pdb) потребляет много ресурсов памяти. Чтобы Вы можете сэкономить память, настроив параметры символа отладчика. Чтобы Обычно настройте решение для загрузки только модулей в вашем проекте.

Чтобы указать загрузку символов, выберите «Инструменты»> «Параметры»> «Отладка»> «Символы».

Установите параметр «Указать только модули» вместо «Все модули», а затем укажите нагрузку для загрузки. Чтобы Во время отладки вы также можете щелкнуть правой кнопкой мыши конкретный модуль в окне «Модуль», чтобы отобразить его и включить в загрузку системы. Чтобы (Чтобы открыть окно во время отладки, выберите «Отладка»> «Окно»> «Модуль».)

Для получения дополнительной информации см.Понимание файлов символов。

Отключить инструменты диагностики

Рекомендуется отключить его после использования анализа ЦП. Чтобы Эта функция может потреблять много ресурсов. Чтобы После включения профилирования ЦП оно будет оставаться включенным в последующих сеансах отладки, поэтому вы можете отключить его отображение по завершении. Чтобы Если вам не нужны предоставленные функции, вы можете сэкономить ресурсы, отключив диагностический инструмент во время отладки.

Чтобы отключить «Средство диагностики», запустите сеанс отладки, выберите «Инструменты»> «Параметры»> «Включить средство диагностики» и отмените выбор этого параметра.

Для получения дополнительной информации см.инструмент анализа。

Отключить инструменты и расширения

Некоторые инструменты или расширения будут закрыты для повышения производительности.

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

Хостинговая языковая служба (Roslyn)

Отключить полный анализ решения

Visual Studio выполняет задачу «найти все ссылки» для каждого показанного метода. Чтобы CodeLens предоставляет такие функции, как отображение количества встроенных ссылок. Чтобы Работа выполняется в отдельном процессе (например, ServiceHub.RoslynCodeAnalysisService32). Чтобы В больших решениях или системах с ограниченными ресурсами эта функция существенно влияет на производительность. Чтобы Например, если вы столкнулись с проблемами памяти при загрузке большого решения на компьютер размером 4 ГБ или если процесс загрузки слишком высок, вы можете отключить CodeLens, чтобы освободить ресурсы.

Чтобы отключить CodeLens, выберите «Инструменты»> «Параметры»> «Текстовый редактор»> «Все языки»> «CodeLens» и отмените выбор этой функции.

CodeLens доступен в редакциях Visual Studio Professional и Enterprise.

Другие инструменты и расширения

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

Чтобы отключить расширения, перейдите в «Инструменты»> «Расширения и обновления» и отключите определенные расширения.

Отключить конструктор XAML

По умолчанию конструктор XAML включен, но он потребляет ресурсы только при открытии файлов .xaml. Чтобы Если вы используете файлы XAML, но не хотите использовать функцию конструктора, отключите эту функцию, чтобы освободить память.

Чтобы отключить конструктор XAML, выберите «Инструменты»> «Параметры»> «Конструктор XAML»> «Включить конструктор XAML» и отмените выбор этого параметра.

Удалить рабочую нагрузку

Вы можете использовать установщик Visual Studio, чтобы удалить рабочие нагрузки, которые больше не используются. Чтобы Эта операция может пропускать пакеты и сборки, которые больше не используются, тем самым оптимизируя потребление ресурсов при запуске и во время выполнения.

Принудительная сборка мусора

CLR использует систему управления памятью для сборки мусора. Чтобы В этой системе память иногда занята объектами, которые больше не нужны. Чтобы Это временное состояние, и сборщик мусора освободит эту память в зависимости от ее производительности и эвристики использования ресурсов. Чтобы Вы можете заставить среду CLR освободить всю неиспользуемую память с помощью горячих клавиш в Visual Studio. Чтобы Если есть большой объем мусора, ожидающего сборки, и сборка мусора была принудительной, вы можете увидеть, что использование памяти процессом devenv.exe уменьшилось в диспетчере задач. Чтобы Этот метод нужен редко. Чтобы Однако после завершения ресурсоемкой операции (например, полной сборки, сеанса отладки или события открытия решения) этот метод помогает определить объем памяти, который фактически использует процесс. Чтобы Поскольку Visual Studio является гибридом (размещенным и собственным), собственный распределитель и сборщик мусора иногда могут конкурировать за ограниченные ресурсы памяти. Чтобы В случае большого использования памяти это может помочь запустить сборщик мусора.

Чтобы принудительно выполнить сборку мусора, используйте горячие клавиши: Ctrl + Alt + Shift + F12, Ctrl + Alt + Shift + F12 (нажмите дважды).

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

Подробное описание сборщика мусора CLR см.Основные принципы сборки мусора。

Читайте также: