Sdílet prostřednictvím


Postupy: Připojení profileru k samostatné aplikaci .NET Framework ke shromažďování dat souběžnosti pomocí příkazového řádku

Toto téma popisuje, jak použít nástroje příkazové řádky Nástroje pro profilaci Visual Studio k připojení profileru k běžící samostatné (klientské) aplikaci rozhraní .NET Framework a ke shromáždě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.

Připojení profileru

Připojení profileru k běžící aplikaci rozhraní .NET Framework

  1. Otevřete okno příkazového řádku.

  2. Spusťte profiler.Zadejte:

    VSPerfCmd/start:concurrency **/output:**OutputFile[Options]

    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

    /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).

  3. Spusťte cílovou aplikaci standardním způsobem.

  4. Připojte profiler k cílové aplikaci.Zadejte:

    VSPerfCmd /attach:PID [/lineoff] [**/targetclr:**Version]

    • PID určuje ID procesu cílové aplikace.ID všech spuštěných procesů lze zobrazit ve Správci úloh systému Windows.

    • /lineoff zakáže kolekci čísel datového řádku.

    • /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.Volitelné.

Ří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í 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í 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

    /globalon /globaloff

    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:{PID|ProcName} /detach[:{PID|ProcName}]

    /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.U aplikace profilované za použití metody souběžnosti lze shromažďování dat ukončit jejím ukončením nebo vyvoláním možnosti VSPerfCmd /detach.Poté je zapotřebí vyvolat možnost VSPerfCmd /shutdown, čímž se profiler 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í

  1. Chcete-li odpojit profiler od cílové aplikace, proveďte jeden z následujících postupů:

    • Zadejte VSPerfCmd /detach

      -nebo-

    • Ukončete cílovou aplikaci.

  2. Ukončete profiler.Zadejte:

    VSPerfCmd/shutdown