Udostępnij za pośrednictwem


Reguły wydajności przez identyfikator

Ostrzeżenie

Opis

DA0001: Użyj StringBuilder dla relacyjne

Wywołania System.String.Concat są znaczna część danych profilowania.Należy wziąć pod uwagę przy użyciu StringBuilder klasy do konstruowania ciągi z wielu segmentów.

DA0002: Brak VSPerfCorProf.dll

Profiler nie można odnaleźć VSPerfCorProf.dll podczas wykonywania profilowania.Ostrzeżenie to występuje, gdy narzędzia wiersza polecenia dla zbierania danych programu profiler są używane bez użycia narzędzia VSPerfCLREnv.cmd do zainicjowania zmiennych środowiskowych konieczne.

DA0003: Wiele próbek jądra

Znaczna część próbki stos wywołania zebranych stosowania był wykonywany w trybie jądra.Należy wziąć pod uwagę profilowania aplikacji przy użyciu innej metody profilowania.

DA0004: Wysoki procesora

Wykorzystanie procesora (CPU) był znaczny w danych, które zostały zebrane przy użyciu metody Instrumentacji profilowania.Należy rozważyć użycie pobierania próbek profilowania metody, gdy profilowania Procesora związany z aplikacji.

DA0005: GC2 częstych kolekcje

Dużą liczbę.Obiekty pamięci netto są odzyskane w 2 bezużytecznych generacji.

DA0006: Zastępowanie Equals() dla typów wartości

Wywołania metody jest równe lub równości operatory typu wartość publicznego są znaczna część danych profilowania.Należy rozważyć zaimplementowanie bardziej efektywną metodą.

DA0007: Unikaj wyjątki dla kontroli przepływu

Wysoki stopień.Procedury obsługi wyjątków NET Framework były nazywane danych profilowania.Należy wziąć pod uwagę, aby zmniejszyć liczbę wyjątków, które są generowane przy użyciu innych logiki przepływu sterowania.

DA0008: Próbki kilku pobrane

Tylko kilka próbki zostały pobrane przy uruchomieniu profilowania.Należy wziąć pod uwagę dłuższe szybciej lub wykonywania próbkowania dla bardziej znaczących wyników.

DA0009: High % time in JIT

W kompilatorze Just W czas (JIT) spędził znaczny procent czasu wykonywania aplikacji.

DA0010: Droga GetHashCode

Metoda przydziela pamięć lub wywołania metody GetHashCode tego typu są znaczna część danych profilowania.

DA0011: Droga CompareTo

Metoda CompareTo typu jest kosztowne lub przydziela pamięć.

DA0012: Znaczną ilość odbicia

Wywołania metody System.Reflection, takie jak element InvokeMember i GetMember lub metod typu, takich jak MemberInvoke są znaczna część danych profilowania.Użytkownik może rozważyć zastąpienie tych metod wczesnego wiązania metod zależne zestawy.

DA0013: Intensywnego korzystania z String.Split lub String.Substring

Wywołania metody System.String.Split lub System.String.Substring są signifiicant część danych profilowania.Należy wziąć pod uwagę przy użyciu System.String.IndexOf lub System.String.IndexOfAny, jeśli testujesz istnienie podciągu w ciągu.

DA0014: Bardzo wysokie stawki stronicowania aktywnej pamięci na dysku

Dane dotyczące wydajności systemu został zebrany w profilowania Uruchom wskazuje, że bardzo wysoki stopień stronicowania aktywnej pamięci na dysk i z wystąpił się całej uruchomić profilowania.Kursy wymiany na tym poziomie, zwykle wpływa na wydajność aplikacji i zdolność do odpowiadania.Rozważ zmniejszenie alokacji pamięci poprzez skorygowanie algorytmów.Masz może również wziąć pod uwagę wymagania dotyczące pamięci aplikacji.uruchomione ponownie profilowania na komputerze, na którym zainstalowano więcej pamięci.

DA0017: Wysoki poziom stronicowania aktywnej pamięci na dysku

Dane dotyczące wydajności systemu został zebrany w profilowania Uruchom wskazuje, że wysoki stopień stronicowania aktywnej pamięci do i z dysku wystąpił się całej uruchomić profilowania.Kursy wymiany na tym poziomie, zwykle wpływa na wydajność aplikacji i zdolność do odpowiadania.Rozważ zmniejszenie alokacji pamięci poprzez skorygowanie algorytmów.Masz może również wziąć pod uwagę wymagania dotyczące pamięci aplikacji.uruchomione ponownie profilowania na komputerze, na którym zainstalowano więcej pamięci.

DA0018: aplikacje 32-bitowe uruchomione w procesie zarządzane limity pamięci

Wskazuje dane systemowe, które zostały zebrane podczas uruchomienia profilowania.NET Framework pamięci sterty zwrócił się maksymalny rozmiar zarządzanego stosach mogą się rozrosnąć w procesie 32-bitowych.Wartość zgłoszona, maksymalna obserwuje się wartość stert gdy trwa proces PROFILOWANEGO była aktywna.Należy wziąć pod uwagę optymalizacji wykorzystania zasobów zarządzanych przez aplikację.

DA0021: Wysoki stopień kolekcji garbage Gen 1

Dane wydajności systemu, które zostały zebrane podczas profilowania wskazują, że znaczna część pamięci dla.NET Framework obiektów został skorygowany za generation 1 wyrzucania elementów bezużytecznych generacji 0 danych kolekcji w porównaniu.

DA0022: Wysoki stopień kolekcji garbage Gen 2

Dane wydajności systemu, które zostały zebrane podczas profilowania wskazują, że znaczna część pamięci dla.Obiekty NET Framework został skorygowany generacji 2 wyrzucania elementów bezużytecznych generacji 0 w porównaniu i kolekcji 1 garbage generacji.

DA0023: Czas Procesora GC wysokiej

Danych wydajności systemu, które zostały zebrane podczas profilowania wskazuje, że ilość czasu spędzanego w kolekcji garbage jest znaczące w porównaniu z czasem przetwarzania aplikacji razem.

DA0024: Czas Procesora GC nadmierne

Dane dotyczące wydajności systemu zebrane podczas profilowania wskazuje, że ilość czasu spędzanego w kolekcji garbage jest nadmiernie wysokie w porównaniu z aplikacji całkowity czas przetwarzania.

DA0026: Przetwarzanie czasu CPU jądra nadmierne

Część czasu Procesora, który został uruchomiony w trybie jądra przekroczona ilość czasu spędzanego w trybie użytkownika.Należy wziąć pod uwagę profilowania ponownie i pobierania próbek, liczby wywołań systemowych (syscalls), aby określić przyczynę czasów wykonania trybu jądra wysoki.

DA0029: Nieobsługiwana wersja środowiska CLR

Próbujesz aplikacji korzystającej z profilu.NET Framework w wersji 1.1, który nie jest obsługiwany przez narzędzia profilowania.

DA0030: Gromadzenie pomiarów poziom interakcji dla bazy danych projektów

Wzywa do System.Data metody są znaczącą część profilowania danych i nie zostały zebrane dane interakcji szczebla w profilowania, uruchom.Należy wziąć pod uwagę profilowania ponownie i dodawanie danych interakcji.

DA0038: Twierdzeniom wysokie stawki Lock

Dane wydajności systemu, zebrane z danymi profilowania wskazuje, że znaczny stopień twierdzeniom lock wystąpił podczas wykonywania aplikacji.Należy wziąć pod uwagę profilowanie ponownie znaleźć przyczynę twierdzeniom przy użyciu współbieżności, metoda profilowania.

DA0039: Bardzo wysokie stawki z blokady twierdzeniom

Dane wydajności systemu, zebrane z danymi profilowania wskazuje, że zbyt wysoki stopień twierdzeniom lock wystąpił podczas wykonywania aplikacji.Należy wziąć pod uwagę profilowanie ponownie przy użyciu współbieżności, metoda profilowania znaleźć przyczynę rywalizacji.

DA0501: Średnia Procesora przez proces trwa profilowane.

Ten komunikat raporty procent czasu, przez który procesor był zajęty wykonywaniem instrukcje z aplikacji.Zgłoszone wartość średnią w danych okresach miary w których proces trwa profilowane była aktywna.Wartość może być większa niż 100% na komputerze z więcej niż jeden procesor.

DA0502: Użycie Procesora maksymalnie przez proces trwa profilowane

Ten komunikat raporty maksymalny procent czasu, przez który procesor był zajęty wykonywaniem instrukcje z aplikacji.Zgłoszone wartości jest maksymalna wartość wśród odstępach pomiaru w których proces trwa profilowane była aktywna.Procent może być większa niż 100% na komputerze z więcej niż jeden procesor.

DA0503: Średnia zestawu roboczego dla procesu jest także wyprofilowane w bajtach

Ten komunikat raporty średnia ilość pamięci fizycznej w bajtach (zestaw roboczy) aktualnie używanej przez proces.Proces zestaw roboczy reprezentuje stron z przestrzeni adresowej procesu, znajdujące się aktualnie w pamięci fizycznej.

DA0504: Maksimum zestawu roboczego dla procesu jest także wyprofilowane w bajtach

Ten komunikat raporty maksymalną ilość pamięci fizycznej w bajtach aktualnie używanej przez proces.Proces zestaw roboczy reprezentuje stron z przestrzeni adresowej procesu, znajdujące się aktualnie w pamięci fizycznej.Ta reguła raporty maksymalną wartość zestawu roboczego procesu, gdy profilowania była aktywna.

DA0505: Bajty prywatne średnia przydzielona dla procesu jest także wyprofilowane

Ten komunikat raporty średnia ilość pamięci wirtualnej przydzielonej przez proces aktualnie w bajtach (bajty prywatne).Bajty prywatne reprezentuje lokalizacji pamięci wirtualnej, które zostały przydzielone przez proces, który jest możliwy tylko przez wątki działające wewnątrz procesu.

DA0506: Bajty prywatne maksymalnie przydzielona dla procesu jest także wyprofilowane

Ten komunikat raporty maksymalną ilość pamięci wirtualnej przydzielonej przez proces aktualnie w bajtach (bajty prywatne).Bajty prywatne reprezentuje lokalizacji pamięci wirtualnej, które zostały przydzielone przez proces, który jest możliwy tylko przez wątki działające wewnątrz procesu.