Postupy: Spuštění samostatné aplikace rozhraní .NET Framework s profilerem za účelem shromáždění dat souběžnosti pomocí příkazového řádku
Toto téma popisuje, jak použít nástroje příkazového řádku nástrojů profilování systému Visual Studio ke spuštění samostatné (klientské) aplikace rozhraní .NET Framework ke shromažďování dat procesu a souběžnosti vláken.
[!POZNÁMKA]
Nástroje příkazového řádku balíku nástrojů pro profilaci 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 profileru, je nezbytné přidat cestu k nástrojům do proměnné prostředí PATH v okně příkazového řádku 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.
Zatímco je profiler připojen k aplikaci, lze pozastavit a obnovit sběr dat.Chcete-li ukončit relaci profilování, nesmí být profiler již připojen k aplikaci a musí být explicitně vypnut.
Spuštění aplikace profilerem
Chcete-li spustit aplikaci rozhraní .NET Framework s profilováním, použijete nástroj VSPerfClrEnv.exe k nastavení proměnných profilování rozhraní .NET Framework.Poté použijte možnosti /start a /launch příkazu VSPerfCmd k inicializaci profilování a spuštění aplikace.Možnosti /start a /launch a jejich příslušné volby lze zadat na jednom řádku příkazu.Do příkazového řádku lze také přidat možnost /globaloff, pokud chcete pozastavit sběr dat při spuštění cílové aplikace.Na samostatném příkazovém řádku lze poté pomocí možnosti /globalon spustit sběr dat.
Chcete-li aplikaci spustit s profilováním
Otevřete okno příkazového řádku.
Spusťte profiler.Zadejte:
VSPerfCmd/start:concurrency[,{ResourceOnly|ThreadOnly}] **/output:**OutputFile [Options]
Možnost /start inicializuje profilování.
/start:concurrency
Umožňuje shromažďovat konflikty prostředků a data spuštění vlákna.
/start:concurrency,resourceonly
Umožňuje shromažďovat pouze data konfliktů prostředků.
/start:concurrency,threadonly
Umožňuje shromažďovat pouze data spuštění vlákna.
Spolu s možností /start je vyžadována možnost /output**:**OutputFile.OutputFile určuje název a umístění souboru dat profilování (.vsp).
S možností /start:concurrency lze použít kteroukoli z následujících možností.
Možnost
Description
/user:[domain\]username
Určuje volitelnou doménu a uživatelské jméno účtu, kterému má být udělen přístup k profileru.
Umožňuje profilování procesů v jiných přihlašovacích relacích.
/wincounter:WinCounterPath
Určuje čítač výkonu systému Windows, který má být shromážděn během profilování.
/automark:Interval
Použijte 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.
/events:Config
Určuje událost ETW, která má být shromážděna během profilování.Události trasování událostí pro Windows jsou shromážděny v samostatném souboru (.etl).
Spusťte cílovou aplikaci.Zadejte:
VSPerfCmd /launch**:**AppName [Options] [Sample Event]
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ě.
/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
Dokud je cílová aplikace spuštěna, může být sběr dat řízen spuštěním nebo zastavením zápisu dat do souboru použitím možností nástroje VSPerfCmd.exe.Řízení sběru dat umožňuje shromažďovat data pro určitou část provádění 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í nástroje VSPerfCmd.exe 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:PID/processoff:PID
Spustí (/processon) nebo zastaví (/processoff) sběr dat pro proces určený pomocí ID procesu (PID).
/attach spustí sběr dat pro proces určený identifikátorem procesu (PID) nebo názvem procesu (ProcName)./detach zastaví sběr dat pro zadaný proces nebo pro všechny procesy, pokud konkrétní proces není zadán.
Ukončení relace profilování
Pro ukončení relace profilování, nesmí profiler pokračovat ve shromažďování dat.Sběr dat souběžnosti lze ukončit zavřením profilované aplikace nebo zavoláním možnosti VSPerfCmd /detach.Poté je zapotřebí zavolat možnost VSPerfCmd /shutdown, čímž se vypne a uzavře 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 postupů:
Ukončete cílovou aplikaci.
-nebo-
Zadejte VSPerfCmd /detach
Ukončete profilování.
VSPerfCmd /shutdown
Viz také
Koncepty
Shromažďování dat souběžnosti pro samostatné aplikace pomocí příkazového řádku profileru