Automatyczne wstrzymanie funkcji

Jeśli dostępna pamięć systemowa spadnie do 200 MB lub mniej, program Visual Studio wyświetli następujący komunikat w edytorze kodu:

Tekst alertu zawieszający pełną analizę rozwiązania

Gdy program Visual Studio wykryje niski stan pamięci, automatycznie zawiesza niektóre zaawansowane funkcje, aby ułatwić jej zachowanie stabilności. Program Visual Studio nadal działa tak jak wcześniej, ale jego wydajność jest obniżona.

W stanie małej ilości pamięci mają miejsce następujące akcje:

  • Analiza kodu na żywo dla języka Visual C# i Visual Basic jest ograniczona do minimalnego zakresu.

  • Tryb odzyskiwania pamięci (GC) dla języka Visual C# i Visual Basic jest wyłączony.

  • Pamięci podręczne programu Visual Studio są opróżniane.

Zwiększanie wydajności programu Visual Studio

Aby uzyskać porady i wskazówki dotyczące zwiększania wydajności programu Visual Studio podczas pracy z dużymi rozwiązaniami lub warunkami o niskiej pamięci, zobacz Zagadnienia dotyczące wydajności dla dużych rozwiązań.

Analiza kodu na żywo jest ograniczona do minimalnego zakresu

Domyślnie analiza kodu na żywo jest wykonywana dla otwartych dokumentów i projektów. Ten zakres analizy można dostosować, aby został zredukowany do bieżącego dokumentu lub został zwiększony do całego rozwiązania. Aby uzyskać więcej informacji, zobacz How to: Configure live code analysis scope for managed code (Jak skonfigurować zakres analizy kodu na żywo dla kodu zarządzanego). W stanie małej ilości pamięci program Visual Studio wymusza ograniczenie zakresu analizy na żywo do bieżącego dokumentu. Można jednak ponownie włączyć preferowany zakres analizy, wybierając przycisk Włącz ponownie na pasku informacji po wyświetleniu lub ponownie uruchamiając program Visual Studio. Okno dialogowe Opcje zawsze wyświetla bieżące ustawienia zakresu analizy kodu na żywo.

Wyłączone małe opóźnienie GC

Aby ponownie włączyć tryb GC o małych opóźnieniach, uruchom ponownie program Visual Studio. Domyślnie program Visual Studio włącza tryb GC o małych opóźnieniach przy każdym wpisywaniu, aby upewnić się, że wpisywanie nie blokuje żadnych operacji GC. Jeśli jednak niski stan pamięci powoduje, że program Visual Studio wyświetli ostrzeżenie o automatycznym zawieszeniu, tryb GC o małych opóźnieniach jest wyłączony dla tej sesji. Ponowne uruchomienie programu Visual Studio powoduje ponowne uruchomienie domyślnego zachowania GC. Aby uzyskać więcej informacji, zobacz GCLatencyMode.

Opróżniane pamięci podręczne programu Visual Studio

Jeśli będziesz kontynuować bieżącą sesję programowania lub uruchom ponownie program Visual Studio, wszystkie pamięci podręczne programu Visual Studio zostaną natychmiast opróżnione, ale zaczną się ponownie wypełniać. Opróżnione pamięci podręczne obejmują pamięci podręczne dla następujących funkcji:

  • Znajdź wszystkie odwołania

  • Przejdź do

  • Dodawanie przy użyciu

Ponadto wyczyszczone są również pamięci podręczne używane do operacji wewnętrznych programu Visual Studio.

Uwaga

Automatyczne ostrzeżenie o zawieszeniu funkcji występuje tylko raz w poszczególnych rozwiązaniach, a nie na podstawie sesji. Oznacza to, że jeśli przełączysz się z języka Visual Basic do języka Visual C# (lub na odwrót) i wystąpi inny niski stan pamięci, możesz uzyskać inne automatyczne ostrzeżenie o zawieszeniu funkcji.