Postupy: Spuštění samostatné aplikace rozhraní .NET Framework s profilerem za účelem shromáždění dat paměti pomocí příkazového řádku
Toto téma popisuje použití nástrojů příkazového řádku balíku Visual Studio Profiling Tools ke spuštění samostatné (klientské) aplikace platformy .NET Framework a ke shromáždění dat v paměti.
Relace profilování má tři části:
Spuštění aplikace za použití profileru.
Shromáždění dat profilování.
Ukončení relace profilování.
[!POZNÁMKA]
Nástroje příkazového řádku balíku Profiling Tools jsou umístěny v podadresáři \Team Tools\Performance Tools instalačního adresáře aplikace Visual Studio.Na 64bitových počítačích jsou k dispozici 64bitové i 32bitové verze nástrojů.Chcete-li využívat nástroje příkazového řádku profiléru, je nezbytné přidat cestu k nástrojům do proměnné prostředí PATH v okně Příkazový řádek nebo do příkazu samého.Další informace naleznete v tématu Určení cesty k nástrojům příkazového řádku pro profilaci.
Spuštění aplikace profilerem
Při spuštění cílové aplikace za použití profiléru je pro inicializaci profiléru a spuštění aplikace používán příkaz VSPerfCmd.exe s možnostmi /start a /launch.Možnosti /start a /launch a jejich příslušné volby lze zadat na jeden příkazový řádek.
Chcete-li pozastavit shromažďování dat a spustit cílovou aplikaci, lze přidat možnosti /globaloff.Spuštění sběru dat je pak provedeno možností /globalon.
Spuštění aplikace pomocí profileru
Otevřete okno příkazového řádku.
Spusťte profiler.Zadejte:
**VSPerfCmd /start:sample /output:**OutputFile [Options]
Možnost /start:sample inicializuje profiler.
Spolu s možností /start je vyžadována možnost /output**:**OutputFile.Parametr OutputFile určuje název a umístění souboru dat profilování (.vsp).
S možností /start:sample lze použít kteroukoli z následujících možností.
Možnost
Description
/wincounter:WinCounterPath
Určuje čítač výkonu systému Windows, který má být shromážděn během profilování.
/automark:Interval
Používejte pouze spolu s možností /wincounter.Určuje počet milisekund mezi událostmi sběru čítače výkonu systému Windows.Výchozí hodnota je 500 ms.
Spusťte cílovou aplikaci.Zadejte:
VSPerfCmd /launch:appName/gc:{allocation|lifetime}[Options]
Pro shromáždění paměťových dat .NET Framework je vyžadována možnost /gc**:**Keyword.Parametr Keyword určuje, zda mají být shromažďována data o přidělování paměti nebo zda shromažďovat také data o životním cyklu objektu.
Klíčové slovo
Description
allocation
Shromažďovat pouze data o přidělování paměti.
lifetime
Shromažďovat data o přidělování paměti i o životním cyklu objektu.
S možností /launch lze použít kteroukoli z následujících možností.
Možnost
Description
/args:Arguments
Určuje řetězec, který obsahuje argumenty příkazového řádku předávané cílové aplikaci.
Spustí cílovou aplikaci příkazového řádku v samostatném okně.
/events:Config
Určuje událost ETW, která má být shromážděna během profilování.Události ETW jsou shromážděny v samostatném souboru (.etl).
/targetclr:Version
Určuje verzi modulu Common Language Runtime (CLR), která má být profilována v případě, že je do aplikace načtena více než jedna verze modulu.
Řízení sběru dat
Je-li cílová aplikace spuštěna, lze sběr dat řídit spouštěním či pozastavováním zápisu dat do souboru pomocí možností nástroje VSPerfCmd.exe.Řízení sběru dat umožňuje shromažďovat data určité části programu, například spouštění či ukončování aplikace.
Spuštění a zastavení sběru dat
Následující páry možností spouští a zastavují sběr dat.Každou možnost zadejte na samostatný příkazový řádek.Sběr dat lze zapnout a vypnout několikrát.
Možnost
Description
Spustí (/globalon) nebo zastaví (/globaloff) sběr dat pro všechny procesy.
/processon:PIDprocessoff:PID
Spustí (/processon) nebo zastaví (/processoff) shromažďování dat pro proces určený daným identifikátorem ID (PID).
Možnost /attach spustí sběr dat pro proces určený parametrem PID (ID procesu).Možnost /detach zastaví sběr dat pro všechny procesy.
Lze také použít možnost VSPerfCmd.exe/mark a vložit tak do datového souboru profilovací značku.Příkaz /mark přidá identifikátor, časové razítko a volitelný uživatelem definovaný textový řetězec.Značky mohou být použity pro filtrování dat.
Ukončení relace profilování.
Chcete-li ukončit relaci profilování, musí být profilér odpojen od všech profilovaných procesů a poté explicitně ukončen.Od aplikace profilované za použití metody vzorkování lze profiler odpojit ukončením aplikace nebo zavoláním možnosti VSPerfCmd /detach.Poté je zapotřebí zavolat možnost VSPerfCmd /shutdown, čímž je profilér vypnut a uzavřen soubor dat profilování.Příkaz VSPerfClrEnv /off vymaže proměnné prostředí profilování.
Ukončení relace profilování
Chcete-li odpojit profiler od cílové aplikace, proveďte jeden z následujících kroků:
Ukončete cílovou aplikaci.
-nebo-
Zadejte příkaz VSPerfCmd /detach
Ukončete profiler.Zadejte:
VSPerfCmd /shutdown
Viz také
Koncepty
Profilace samostatných aplikací z příkazového řádku