Sdílet prostřednictvím


Běhová profilace

Poznámka:

Tento článek je specifický pro rozhraní .NET Framework. Nevztahuje se na novější implementace .NET, včetně .NET 6 a novějších verzí.

Profilace je metoda shromažďování dat o výkonu v jakémkoli scénáři vývoje nebo nasazení. Tato část je určená pro vývojáře a správce systému, kteří chtějí shromažďovat informace o výkonu aplikací.

Sledování výkonu pomocí Sledování výkonu (Perfmon.exe)

Sledování výkonu je nejjednodušší nástroj pro profilování aplikace .NET Framework. Sledování výkonu graficky představuje data nalezená v čítačích výkonu rozhraní .NET Framework, které jsou nainstalovány s modulem CLR (Common Language Runtime) a sadou Windows SDK. Tyto čítače lze použít ke sledování všeho od správy paměti až po výkon kompilátoru JIT (just-in-time). Řeknou vám o prostředcích, které vaše aplikace používá, což je nepřímým měřítkem výkonu vaší aplikace. Pomocí těchto čítačů můžete porozumět tomu, jak vaše aplikace interně funguje.

Spuštění Perfmon.exe ve Windows Vista a novějších verzích

  1. Do příkazového řádku zadejte příkaz perfmon. Zobrazí se konzola Sledování výkonu.

  2. Ve složce Nástroje monitorování klikněte na Sledování výkonu.

  3. Na panelu nástrojů Sledování výkonu klikněte na ikonu Přidat (znaménko plus), pokud je k dispozici. Pokud není k dispozici, klikněte pravým tlačítkem myši v okně monitorování a vyberte možnost Přidat čítače .

    Otevře se dialogové okno Přidat čítače . Seznam Dostupné čítače zobrazí dostupné objekty výkonu. Existuje řada předdefinovaných objektů pro aplikace .NET Framework, včetně objektů pro správu paměti (.NET CLR Memory), interoperability (.NET CLR Interop), zpracování výjimek (výjimky .NET CLR) a multithreading (.NET CLR LocksAndThreads). Každý objekt výkonu zahrnuje řadu jednotlivých čítačů výkonu. Seznam čítačů výkonu dostupných v Sledování výkonu najdete v tématu Čítače výkonu.

  4. Pokud chcete zobrazit seznam jednotlivých čítačů výkonu, které podporuje, zaškrtněte políčko vedle názvu objektu výkonu.

  5. Klikněte na čítač výkonu, který chcete zobrazit.

  6. V seznamu Instance vybraného objektu klikněte na <všechny instance> a určete, že chcete monitorovat čítač výkonu pro modul CLR (to znamená na úrovni celého systému).

    nebo

    V seznamu Instance vybraného objektu klepněte na název aplikace pro monitorování čítače výkonu pro danou aplikaci.

    Chcete-li odlišit více verzí modulu runtime nebo zrušit nejednoznačnost více aplikací se stejným názvem, musíte také upravit klíč registru. Další informace naleznete v tématu Čítače výkonu a souběžné aplikace.

Poznámka:

Při instalaci nových čítačů výkonu v době, kdy je spuštěna konzola Výkon, zastavte a restartujte konzolu Výkon, aby byly nové čítače viditelné.

Pokud chcete profilovat sestavení, které existuje v zóně nebo ve vzdálené sdílené složce, ujistěte se, že vzdálené sestavení má úplný vztah důvěryhodnosti v počítači, na kterém běží čítače výkonu. Pokud sestavení nemá dostatečný vztah důvěryhodnosti, čítače výkonu nebudou fungovat. Informace o udělení důvěryhodnosti různým zónům najdete v tématu Caspol.exe (Nástroj zásad zabezpečení přístupu kódu).

Poznámka:

V systémech, na kterých je nainstalovaná rozhraní .NET Framework 4, nemusí Sledování výkonu zobrazovat data pro čítače výkonu v některých kategoriích, jako jsou data .NET CLR a .NET CLR Sítě, pro aplikace vyvinuté pomocí rozhraní .NET Framework 1.1. Pokud se jedná o tento případ, můžete nakonfigurovat Sledování výkonu k zobrazení těchto dat přidáním <forcePerformanceCounterUniqueSharedMemoryReads> element do konfiguračního souboru aplikace.

Čtení a vytváření čítačů výkonu prostřednictvím kódu programu

Rozhraní .NET Framework poskytuje třídy, které můžete použít pro programový přístup ke stejným informacím o výkonu, které jsou k dispozici v konzole výkonu. Tyto třídy můžete také použít k vytvoření vlastních čítačů výkonu. Následující tabulka popisuje některé třídy monitorování výkonu, které jsou k dispozici v rozhraní .NET Framework.

Třída Popis
System.Diagnostics.PerformanceCounter Představuje součást čítače výkonu systému Windows. Tato třída slouží ke čtení existujících předdefinovaných nebo vlastních čítačů a publikování (zápisu) dat o výkonu do vlastních čítačů.
System.Diagnostics.PerformanceCounterCategory Poskytuje několik metod pro interakci s čítači a kategoriemi čítačů v počítači.
System.Diagnostics.PerformanceCounterInstaller Určuje instalační program pro komponentu PerformanceCounter .
System.Diagnostics.PerformanceCounterType Určuje vzorec pro výpočet NextValue metody pro .PerformanceCounter

Viz také