VS 2017 - Bardzo powolny (laggy) podczas debugowania


79

Kiedy debuguję moje rozwiązanie, vs 2017 jest bardzo opóźniony i powolny, tak jakby musiał obsługiwać coś ciężkiego w tle.

Dlatego przestaje „odpowiadać” co 5 sekund przez 2 sekundy, co jest bardzo denerwujące. Jakieś sugestie?

EDYTUJ (wypróbowane sugestie):

  • Browser Link jest wyłączony
  • Zatrzymano opinie klientów

1
Miałem to raz z uruchomionym BrowserLink. Wyłączyłem to i wszystko znów poszło gładko, może to czerwony śledź, ale warto spróbować.
— Chris Dixon

Dzięki, ale nie zadziałało: /
— Muarl

3
Czy próbowałeś zatrzymać opinie klientów? To Help -> Send Feedback -> Ustawienia ... -> Nie, nie chciałbym uczestniczyć
— Ori Nachum

Niestety tak - zawsze temu zaprzeczam
— Muarl

Czy masz włączoną funkcję Intellitrace?
— Ken Tucker

Odpowiedzi:


94

Po dokładniejszym zbadaniu stwierdziłem, że ten wątek odznaczenie opcji Włącz narzędzia diagnostyczne podczas debugowania w menu Narzędzia → Opcje → Debugowanie → Ogólne załatwiło sprawę !

Usunięcie zaznaczenia opcji Włącz debugowanie JavaScript dla ASP.NET w menu
Narzędzia → Opcje → Debugowanie → Ogólne
powoduje ogromną różnicę w wydajności.


1
zgłoś to firmie Microsoft, aby mogli to naprawić za pomocą aktualizacji dla vs2017: docs.microsoft.com/en-us/visualstudio/ide/ ...
— magicandre1981

YAY! wow, traciłem zmysły z „kliknięciem i czekaniem> 5 sekund” na KAŻDĄ akcję ... DZIĘKI!
— EaziLuizi

13
Mam ten sam problem, ale już wyłączono
— opcję

W naszym przypadku uruchomienie w społeczności było znacznie szybsze niż uruchomienie w przedsiębiorstwie. Nie masz pewności, jakie funkcje może mieć firma Enterprise, której nie ma w przypadku tej społeczności? Czy ktoś ma spekulacje?
— Eric Gurney

2
Naprawiłem to też dla mnie. Takie funkcje naprawdę nie powinny znikać, chyba że są skalowalne.
— Zestaw

14

Jeśli wyłączenie narzędzi diagnostycznych nie rozwiąże problemu, spróbuj wyłączyć IntelliTrace, odznaczając opcję Włącz IntelliTrace w menu Narzędzia -> Opcje -> IntelliTrace. Pracuj dla mnie.


6
IntelliTrace to całkiem przydatne narzędzie. Zamiast wyłączać całość, najlepiej po prostu wyłączyć zdarzenie, które spowalnia działanie. Narzędzia → Opcje → IntelliTrace → Zdarzenia IntelliTrace . Dla mnie, gdy wyłączyłem rejestrowanie zdarzeń ADO.NET, sprawy znowu zaczęły działać szybko.
— JustMaier

13

Próbowałem samodzielnie wyłączyć kilka rzeczy, aby zobaczyć, co je powoduje. Jedyne, co mi się sprawdziło, to Narzędzia> Opcje> Debugowanie> Ogólne> „Włącz debugowanie JavaScript dla ASP.NET (Chrome i IE)”.

Używam VS2017 Enterprise v15.2 dla Asp.net WebForms.


3
Dzięki. Wyłączenie opcji Włącz debugowanie JavaScript dla ASP.NET (Chrome i IE) w końcu
— Nick G.

@NickG. miło cię słyszeć :)
— afr0

4

Występuje również opóźnienie, gdy zaznaczona jest opcja „Włącz debugowanie Javascript dla ASP.NET (Chrome i IE)”. Wyłączenie opcji „Włącz narzędzia diagnostyczne podczas debugowania” nie pomogło.

Jednak zauważyłem również, że kiedy F12 dla narzędzi programistycznych Chrome, czas opóźnienia mija i aplikacja działa.

Mam nadzieję że to pomoże.


Dzięki. Wyłączenie opcji Włącz debugowanie JavaScript dla ASP.NET (Chrome i IE) w końcu
— Nick G.

3

Ukrywanie okna Threads załatwiło sprawę.


1
Skomentuj, dlaczego głosowano przeciw? Jeśli twoja aplikacja działa z wieloma wątkami i to okno to pokazuje, z pewnością znacznie spowalnia proces debugowania
— Niels Filter,


1
Tak, to bardzo wyraźnie rozwiązało problem powolności debuggera! Wielkie dzięki za wskazówkę! Dziwne jest jednak to, że zawsze miałem widoczne okno "wątków", ale powolność nie zawsze występowała.
— Dimitri C.

Zwróć uwagę, że wystarczy ukryć okno, aktywując inną kartę, aby okno „wątków” nie było widoczne. Prawdopodobnie jest to powód, dla którego powolność czasami występowała, a czasami nie, w zależności od wybranej strony karty.
— Dimitri C.

3

Jedyną rzeczą, która pomogła mi, było wyłączenie opcji Debuggera w Resharper. Jeśli używasz Resharpera , spróbuj ODPOWIEDZIĆ „Pokaż wartości zmiennych lokalnych w edytorze” w menu: Resharper -> Opcje -> Narzędzia -> Debugger .

Opcje debbugowania Resharpera

Pomogło mi.


2

U mnie zadziałało usunięcie wszystkich następujących folderów z katalogu rozwiązania:

  • .vs
  • x64
  • Debug
  • Release

1

Miałem ten sam problem. W trybie debugowania mój projekt formularzy internetowych działał bardzo wolno. Używając Ctrl + F5, działał szybko (tak jak po wdrożeniu). Znalazłem blok try / catch, który wykonywał się 45 razy. Nic nie robił, po prostu łapał błąd, który popełniłem. Naprawiłem błąd i podczas usuwania bloku try-catch - voila! - powrót do pełnej prędkości.

Więc jeśli masz ten problem i wypróbowałeś wszystkie powyższe rozwiązania (zrobiłem to), poszukaj bloku try catch, który często się uruchamia. [Napraw swój błąd :)], a następnie usuń blok try-catch. Nie mogę uwierzyć, jaka to różnica. Oczywiście nie powinno było robić żadnej różnicy, ponieważ blok try-catch nic nie robił, ale tak.



0

Jeśli używasz VS 2017 Enterprise Edition, spróbuj wyłączyć funkcję IntelliTrace (Narzędzia -> Opcje -> IntelliTrace)

przy wyłączonej tej funkcji opóźnione zachowanie zniknęło nawet przy włączonych narzędziach diagnostycznych (Narzędzia -> Opcje -> Debugowanie -> Włącz narzędzia diagnostyczne podczas debugowania)


4
Może być wiele innych powodów, dla których Twoja aplikacja może spowalniać podczas debugowania, jeśli sugerowane powyżej rozwiązanie nie działa, nie oznacza to, że nie we wszystkich przypadkach.
— armadillo.mx

0

Czasami dzieje się tak z powodu skanowania w czasie rzeczywistym w programie antywirusowym.

„ Dodaj wyjątki ” pliki / foldery programu Visual Studio dla programu antywirusowego

C: \ Program Files (x86) \ Microsoft Visual Studio \ 2017 \ Professional \ Common7 \ IDE \ devenv.exe

C: \ Program Files (x86) \ Microsoft Visual Studio \ 201


0

Miałem ten problem polegający na tym, że program działał wolniej, jeśli został uruchomiony ze studia wizualnego, okazało się, że jest zbyt wiele wątków, takich jak dużo nowego System.Threading.Thread () w pętli itp. Przełączyłem kod na użycie ThreadPool zamiast z Zadanie itp. I powolność minęła.


0

wybranie „Załaduj tylko określone moduły” załatwiło sprawę ( Narzędzia => Opcje => Debugowanie => Symbole )


0

Miałem też ten problem, pomogło mi wyłączyć opcję Włącz edycję i kontynuuj w menu Narzędzia → Opcje → Debugowanie → Ogólne.


0

W moim przypadku miałem przełom z warunkiem, który nigdy nie został spełniony. Całkowicie zapomniałem o tym punkcie krytycznym. Czasami dodanie prostego warunku do punktu przerwania może znacznie spowolnić szybkość debugowania.

Dodanie tego na wypadek, gdyby to mogło komuś pomóc.


-1

obejściem, którego użyłem, było uruchomienie msvcmon.exe lokalnie w trybie administratora przed uruchomieniem debugera. Następnie uruchom okno dołączania i podaj port zdalnego debugowania.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.