Postupy: Připojení profileru k samostatné aplikaci .NET Framework ke shromažďování dat paměti pomocí příkazového řádku
Toto téma popisuje, jak použít nástroje příkazové řádky Nástroje pro profilaci Visual Studio Premium k připojení profileru k běžící samostatné (klientské) aplikaci rozhraní .NET Framework a ke shromáždění dat paměti.
[!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.
Chcete-li se připojit k aplikaci .NET Framework a shromažďovat paměťová data, musíte použít nástroj VSPerfCLREnv.cmd k inicializaci příslušných proměnných prostředí před spuštěním cílové aplikace.Když je profiler připojen k aplikaci, lze použít nástroj VSPerfCmd.exe a pozastavit a obnovit sběr dat.
Chcete-li ukončit relaci profilování, musí být profiler odpojen od všech profilovaných procesů a poté explicitně ukončen.Ve většině případů doporučujeme na konci relace vyčistit proměnné prostředí profilování.
Připojení profileru
Připojení profileru k běžící aplikaci rozhraní .NET Framework
Otevřete okno příkazového řádku.
Inicializujte proměnné prostředí pro profilování.Zadejte:
VSPerfClrEnv {/samplegc | /samplegclife} [/samplelineoff]
Možnosti /samplegc a /samplegclife určují, zda mají být shromažďována pouze data o přidělování paměti nebo zda shromažďovat také data o životním cyklu objektu.Musí být zadána pouze jedna jediná možnost.
Možnost
Popisy
/samplegc
Shromažďovat pouze data o přidělování paměti.
/samplegclife
Shromažďovat data o přidělování paměti i o životním cyklu objektu.
Možnost /samplelineoff zakazuje shromažďování dat o číslech řádků zdrojového kódu.
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.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
/user:[Domain\]UserName
Určuje doménu a uživatelské jméno účtu vlastnícího profilovaný proces.Tato možnost je vyžadována, pouze pokud je proces spuštěn pod jiným než přihlášeným uživatelem.Vlastník procesu je uveden ve sloupci Uživatelské jméno na záložce Procesy ve Správci úloh systému Windows.
Umožňuje profilování procesů v jiných relacích.Tato možnost je vyžadována, pokud je aplikace spuštěna v jiné relaci.Identifikátor relace je vypsán ve sloupci ID relace na záložce Procesy ve Správci úloh systému Windows./CS může být zadán jako zkratka pro /crosssession.
/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.
Je-li třeba, spusťte cílovou aplikaci standardním způsobem.
Připojte profiler k cílové aplikaci.Zadejte:
VSPerfCmd /attach:{PID|ProcName} [/targetclr**:**Version]
PID určuje ID procesu cílové aplikace.ProcessName určuje název procesu.Pamatujte, že pokud zadáte ProcessName a běží více procesů, které mají stejný název, výsledky mohou být nepředvídatelné.ID všech spuštěných procesů lze zobrazit ve Správci úloh systému Windows.
**/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
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 pro určitou část 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:PID/processoff:PID
Spustí (/processon) nebo zastaví (/processoff) sběr dat pro proces určený pomocí (PID).
/attach spustí sběr dat pro proces určený identifikátorem 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í
Chcete-li ukončit relaci profilování, musí být profiler 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ž 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í
Chcete-li odpojit profiler od cílové aplikace, proveďte jeden z následujících kroků:
Zadejte VSPerfCmd /detach
-nebo-
Ukončete cílovou aplikaci.
Ukončete profiler.Zadejte:
VSPerfCmd /shutdown
(Volitelné) Vyčistěte proměnné prostředí pro profilování.Zadejte:
VSPerfCmd /off
Viz také
Koncepty
Profilace samostatných aplikací z příkazového řádku