Udostępnij za pośrednictwem


Profilowanie środowiska uruchomieniowego

Uwaga / Notatka

Ten artykuł jest specyficzny dla programu .NET Framework. Nie ma zastosowania do nowszych implementacji platformy .NET, w tym .NET 6 i nowszych wersji.

Profilowanie to metoda zbierania danych wydajności w dowolnym scenariuszu programowania lub wdrażania. Ta sekcja dotyczy deweloperów i administratorów systemu, którzy chcą zbierać informacje o wydajności aplikacji.

Śledzenie wydajności przy użyciu monitora wydajności (Perfmon.exe)

Monitor wydajności jest najprostszym narzędziem do profilowania aplikacji .NET Framework. Monitor wydajności graficznie reprezentuje dane znalezione w licznikach wydajności programu .NET Framework zainstalowanych przy użyciu środowiska uruchomieniowego języka wspólnego i zestawu Windows SDK. Te liczniki mogą służyć do monitorowania wszystkiego, od zarządzania pamięcią do wydajności kompilatora just in time (JIT). Informują o zasobach używanych przez aplikację, co jest pośrednią miarą wydajności aplikacji. Użyj tych liczników, aby zrozumieć, jak aplikacja działa wewnętrznie.

Aby uruchomić Perfmon.exe w systemie Windows Vista i nowszych wersjach

  1. W wierszu polecenia wpisz perfmon. Zostanie wyświetlona konsola Monitora wydajności .

  2. W folderze Narzędzia monitorowania kliknij pozycję Monitor wydajności.

  3. Na pasku narzędzi Monitor wydajności kliknij ikonę Dodaj (znak plus), jeśli jest obecny. Jeśli nie jest obecny, kliknij prawym przyciskiem myszy w oknie monitora i wybierz opcję Dodaj liczniki .

    Spowoduje to otwarcie okna dialogowego Dodawanie liczników . W polu Listy Dostępne liczniki są wyświetlane dostępne obiekty wydajności. Istnieje wiele wstępnie zdefiniowanych obiektów dla aplikacji .NET Framework, w tym zarządzania pamięcią (.NET CLR Memory), współdziałania (.NET CLR Interop), obsługi wyjątków (.NET CLR Exceptions) i wielowątkowości (.NET CLR LocksAndThreads). Każdy obiekt wydajności zawiera szereg poszczególnych liczników wydajności. Aby uzyskać listę liczników wydajności dostępnych w monitorze wydajności, zobacz Liczniki wydajności.

  4. Zaznacz pole wyboru obok nazwy obiektu wydajności, aby wyświetlić listę poszczególnych liczników wydajności, które obsługuje.

  5. Kliknij licznik wydajności, który chcesz wyświetlić.

  6. W polu Listy Wystąpień wybranego obiektu kliknij pozycję <Wszystkie wystąpienia> , aby określić, że chcesz monitorować licznik wydajności środowiska uruchomieniowego języka wspólnego globalnie (czyli w całym systemie).

    — lub —

    W polu Lista wystąpień wybranego obiektu kliknij nazwę aplikacji, aby monitorować licznik wydajności dla tej aplikacji.

    Aby odróżnić wiele wersji środowiska uruchomieniowego lub uściślać wiele aplikacji o tej samej nazwie, należy również zmodyfikować klucz rejestru. Aby uzyskać więcej informacji, zobacz Liczniki wydajności In-Process i aplikacje poboczneBy-Side.

Uwaga / Notatka

Po zainstalowaniu nowych liczników wydajności podczas uruchamiania konsoli wydajności zatrzymaj i uruchom ponownie konsolę wydajności, aby nowe liczniki zostały widoczne.

Jeśli chcesz profilować zestaw, który istnieje w strefie lub w zdalnym udziale, upewnij się, że zdalny zestaw ma pełne zaufanie na komputerze, na którym uruchomione są liczniki wydajności. Jeśli zestaw nie ma wystarczającego zaufania, liczniki wydajności nie będą działać. Aby uzyskać informacje o udzielaniu zaufania do różnych stref, zobacz Caspol.exe (Narzędzie zasad zabezpieczeń dostępu kodu).

Uwaga / Notatka

W systemach, w których jest zainstalowany program .NET Framework 4, monitor wydajności może nie wyświetlać danych dla liczników wydajności w niektórych kategoriach, takich jak .NET CLR Data i .NET CLR Networking, dla aplikacji opracowanych przy użyciu programu .NET Framework 1.1. W takim przypadku można skonfigurować monitor wydajności tak, aby wyświetlał te dane, dodając <element forcePerformanceCounterUniqueSharedMemoryReads> do pliku konfiguracji aplikacji.

Programowe odczytywanie i tworzenie liczników wydajności

Program .NET Framework udostępnia klasy, których można użyć do programowego uzyskiwania dostępu do tych samych informacji o wydajności, które są dostępne w konsoli wydajności. Można również użyć tych klas do tworzenia niestandardowych liczników wydajności. W poniższej tabeli opisano niektóre klasy monitorowania wydajności, które są dostępne w programie .NET Framework.

Klasa Opis
System.Diagnostics.PerformanceCounter Reprezentuje składnik licznika wydajności systemu Windows. Ta klasa służy do odczytywania istniejących wstępnie zdefiniowanych lub niestandardowych liczników oraz publikowania (zapisu) danych wydajności do liczników niestandardowych.
System.Diagnostics.PerformanceCounterCategory Udostępnia kilka metod interakcji z licznikami i kategoriami liczników na komputerze.
System.Diagnostics.PerformanceCounterInstaller Określa instalatora składnika PerformanceCounter .
System.Diagnostics.PerformanceCounterType Określa formułę, aby obliczyć metodę NextValue dla elementu PerformanceCounter.

Zobacz także