Медлительность ReSharper
-
01-07-2019 - |
Вопрос
Мне нравится ReSharper, но он пожирает память.Он может быстро раздуться и без особых усилий съесть полгига ОЗУ и угробить IDE.Кто-нибудь знает какой-нибудь способ настроить его не так медленно?
Решение
Отключите компиляцию на лету (что, к сожалению, является одной из ее лучших функций)
Другие советы
Не уверен, насколько велики ваши решения, но я перестал использовать 4.5 по той же причине, по которой я перестал использовать все предыдущие версии — использование памяти.
Анализ кода и поддержка модульного тестирования были основной причиной, по которой я купил его. Отключение означает, что смысла для его использования больше нет.
Рабочая станция имеет 4 ГБ памяти, и я могу легко убить ее с помощью ReSharper при запуске нашего сквозного стека в отладчиках.
Следующий выпуск 4.5 будет основан на производительности и объеме памяти.
видеть Илья Рыженков блог
Вышел Решарпер 4.5.По моему опыту, это меньше влияет на память, но мне все равно может не хватить памяти.
У меня возникла проблема: загрузка решения для более чем 100 проектов занимала более 10 минут.После загрузки производительность VS была бы нормальной, хотя она странным образом колебалась между «хорошо» и «очень плохо».
Короткий ответ:Устранение предупреждений Resharper, похоже, улучшает общую производительность VS/R#.
Самая большая проблема в конечном итоге заключалась в том, что у нас было несколько файлов двоичных данных (зашифрованных данных), включенных в качестве встроенных ресурсов, которые имели расширения .xml.Решарпер очень старался проанализировать эти файлы.В конце концов это пройдет, но в процессе возникнет более 100 тысяч ошибок.Изменение расширения на одно Resharper не анализировал автоматически (в данном случае .bin) решило проблему.
У нас все еще есть около 10 файлов, которые, когда они или файл, от которого они зависят, какое-то время редактируются.Эти файлы являются частичными частями одного определения класса, где каждый файл имеет в среднем 3000 LOC.Да, все верно, речь идет о классе линий 30К.Это также довольно плохой код по другим причинам, многие из которых Resharper отмечает, превращая правую полосу переплета практически в сплошную оранжевую линию.Редактирование часто заставляет Resharper анализировать все заново.Во время выполнения этого анализа производительность заметно снижается.
Я пришел к выводу, что чем меньше ошибок/предупреждений выявляет R#, тем лучше он работает.Мои неофициальные данные, собранные во время очистки/рефакторинга этого проекта, похоже, подтверждают это.
Многие люди жалуются на проблемы с производительностью Resharper.Если у вас есть хотя бы несколько больших уродливых файлов кода с множеством предупреждений Resharper, то небольшое время, потраченное на очистку этого кода, может привести к повышению общей производительности.Это имеет для нас.
Вы можете посмотреть, сколько памяти использует ReSharper.
ReSharper -> Общие -> Показывать использование управляемой памяти в строке состояния.
Если вы работаете с большими исходными файлами, Resharper работает медленно (на момент написания этой статьи я работаю над версией 5.0).
Вы можете просмотреть использование памяти Resharper, нажав «Параметры Resharper» -> «Основные» -> «Показать использование памяти» в строке состояния.
Когда я впервые это сделал, я заметил, что Resharper использовал сотни мегабайт памяти!Однако следующий шаг помог мне (временно) исправить медлительность:
Щелкните правой кнопкой мыши по использованию памяти и выберите «Собрать мусор». - казалось, это сразу же решило мою медлительность.
Что касается перехвата памяти: я обнаружил, что объем памяти VS2008 увеличивается каждый раз, когда я закрываю одно решение и открываю другое.Это верно, даже если я закрываю решение и снова открываю это же решение.
Новый ReSharper 4.5 работает намного лучше, чем предыдущие версии 4.x.Я бы порекомендовал вам попробовать это.
В предыдущих версиях у меня была такая же проблема, с выходом 4.0 эти проблемы вроде бы ушли.Теперь с 4.1 я не чувствую такого сильного замедления, которое было раньше.Моя IDE больше не зависает.
вы пробовали обновиться?
Попробуйте бета-версию 4.5.Версия 4.1 убивала мою машину для разработки с 2 ГБ памяти, но с бета-версией она снова стала работать невероятно гладко.Однако у других был противоположный опыт, поэтому YMMV.
Да, 4.5 работает намного лучше.Насколько я понимаю, версия 4.5 должна была решить проблемы с производительностью.
У меня и моих коллег также возникли огромные проблемы с производительностью ReSharper: только что мой ReSharper занял 1,1 ГБ памяти.Visual Studio специально тормозит при написании JavaScript, это невыносимо.Вы можете отключить компиляцию на лету, но это лучшая функция, которую она имеет...
редактировать:Кажется, у всех в этой теме есть ReShaprper 4.x, у меня версия 6.0.