Sdílet prostřednictvím


VSInstr

Nástroj VSInstr se používá k instrumentaci binárních souborů.To je vyvoláno pomocí následující syntaxe:

VSInstr [/U] filename [/options]

Následující tabulka popisuje možnosti nástroje VSInstr:

Parametry

Description

Help nebo ?

Zobrazí nápovědu.

U

Zapíše přesměrovaný výstup konzole jako Unicode.Musí to být první zadaná možnost.

@filename

Určuje název souboru odpovědí, který obsahuje jednu možnost příkazu pro řádek.Nepoužívejte uvozovky.

OutputPath:path

Určuje cílový adresář pro instrumentovaný obrázek.Pokud není zadána výstupní cesta, původní binární soubor je přejmenován přidáním přípony "Orig" do názvu souboru ve stejném adresáři a je instrumentována kopie binárnho souboru.

Exclude:funcspec

Určuje specifikaci funkce pro vyloučení z instrumentace pokusy.Je užitečný, když náhodné vložení profilování ve funkci způsobí nepředvídatelné nebo nežádoucí výsledky.

Nepoužívejte možnosti Exclude a Include, které odkazují na funkce ve stejném binárním souboru.

Lze určit více specifikací funkce se samostatnými možnostmi Exclude.

funcspec je definován jako:

[namespace<separator1>] [class<separator2>]function

<separator1> je :: pro nativní kód a . pro spravovaný kód.

<separator2> je vždy ::

Exclude je podporován s pokrytím kódu.

Zástupný znak * je podporován.Chcete-li například vyloučit všechny funkce v oboru názvů, použijte:

MyNamespace::*

Pro vypsání úplných názvů funkcí v zadaném binárním souboru lze použít VSInstr /DumpFuncs.

Include:funcspec

Určuje specifikaci funkce v binárním souboru pro instrumentaci s pokusy.Ostatní funkce v binárních souborech nejsou instrumentovány.

Lze určit více specifikací funkce se samostatnými možnostmi Include.

Nepoužívejte možnosti Include a Exclude, které odkazují na funkce ve stejném binárním souboru.

Include není podporován s pokrytím kódu.

funcspec je definován jako:

[namespace<separator1>] [class<separator2>]function

<separator1> je :: pro nativní kód a . pro spravovaný kód.

<separator2> je vždy ::

Zástupný znak * je podporován.Chcete-li například zahrnout všechny funkce v oboru názvů, použijte:

MyNamespace::*

Pro vypsání úplných názvů funkcí v zadaném binárním souboru lze použít VSInstr /DumpFuncs.

DumpFuncs

Uvádí seznam funkcí v rámci zadaného obrázku.Není provedena žádná instrumentace.

ExcludeSmallFuncs

Vyloučí z instrumentace malé funkce, které jsou krátkými funkcemi, které neprovádějí žádná volání funkce.Možnost ExcludeSmallFuncs zajišťuje menší režii instrumentace a tím i větší rychlost instrumentace.

Vyloučení malých funkcí také snižuje velikost souboru .vsp a čas nutný pro analýzu.

Mark:{Before|After|Top|Bottom},funcname,markid

Vloží značku profilu (identifikátor použitý k oddělení dat v sestavách), kterou lze použít pro určení začátku nebo konce oblasti dat v souboru sestavy .vsp.

Before- Bezprostředně před vstupem cílové funkce.

After- Ihned po ukončení cílové funkce.

Top- Ihned po vstupu cílové funkce.

Bottom- Bezprostředně před každým návratem v cílové funkci.

funcname- Název cílové funkce

Markid- Kladné celé číslo (dlouhé) jako identifikátor značky profilu.

Coverage

Provede instrumentaci pokrytí.Lze ji použít pouze s následujícími možnostmi: Verbose, OutputPath, Exclude a Logfile..

Verbose

Možnost Verbose se používá k zobrazení podrobných informací o procesu instrumentace.

NoWarn[:[Message Number[;Message Number]]]

Potlačí všechna nebo specifická upozornění.

Message Number- číslo varování.Pokud je vynecháno Message Number, jsou potlačeny všechny výstrahy.

Další informace naleznete v tématu Upozornění VSInstr.

Control:{Thread|Process|Global}

Určuje úroveň profilování následujících Možností kontroly shromažďování dat VSInstr:

Start

StartOnly

Suspend

StopOnly

SuspendOnly

ResumeOnly

Thread- určuje funkce kontroly shromažďování dat na úrovni podprocesu.Profilování je spuštěno nebo zastaveno pouze pro aktuální podproces.Stav profilování jiných podprocesů není ohrožen.Výchozí nastavení je podproces.

Process- určuje funkce kontroly shromažďování dat profilování na úrovni procesu.Profilování spustí nebo zastaví všechny podprocesy v aktuálním procesu.Stav profilování jiných procesů není ovlivněn.

Global- určuje funkce kontroly shromažďování dat na globální úrovni (napříč procesy).

Pokud nezadáte úroveň profilování, dojde k chybě.

Start:{Inside|Outside},funcname

Omezuje shromažďování dat na cílové funkce a podřízené funkce volané funkcí.

Inside- Ihned po vstupu do cílové funkce vloží funkci StartProfile.Funkci StopProfile vloží bezprostředně před každým návratem v cílové funkci.

Outside- Vloží funkci StartProfile bezprostředně před každým voláním do cílové funkce.Funkci StopProfile vloží ihned po každém volání do cílové funkce.

funcname - název cílové funkce.

Suspend:{Inside|Outside},funcname

Pro cílovou funkci a podřízené funkce volané funkcí vyloučí shromažďování dat.

Inside- Ihned po vstupu do cílové funkce vloží funkci SuspendProfile.Bezprostředně před každým návratem v cílové funkci vloží funkci ResumeProfile.

Outside- Ihned před vstupem do cílové funkce vloží funkci SuspendProfile.Ihned po opuštění cílové funkce vloží funkci ResumeProfile.

funcname- název cílové funkce.

Pokud cílová funkce obsahuje funkci StartProfile, funkce SuspendProfile je vložena před ní.Pokud cílová funkce obsahuje funkci StopProfile, funkce ResumeProfile je vložena po ní.

StartOnly:{Before|After|Top|Bottom},funcname

Spustí shromažďování dat během spuštění profilování.Vloží v určeném umístění funkci rozhraní API StartProfile.

Before- bezprostředně před vstupem cílové funkce.

After- ihned po ukončení cílové funkce.

Top- ihned po vstupu cílové funkce.

Bottom- bezprostředně před každým návratem v cílové funkci.

funcname- název cílové funkce.

StopOnly:{Before|After|Top|Bottom},funcname

Zastaví shromažďování dat během spuštění profilování.Vloží v určeném umístění funkci StopProfile.

Before- bezprostředně před vstupem cílové funkce.

After- ihned po ukončení cílové funkce.

Top- ihned po vstupu cílové funkce.

Bottom- bezprostředně před každým návratem v cílové funkci.

funcname- název cílové funkce.

SuspendOnly:{Before|After|Top|Bottom},funcname

Zastaví shromažďování dat během spuštění profilování.Vloží v určeném umístění rozhraní API SuspendProfile.

Before- bezprostředně před vstupem cílové funkce.

After- ihned po ukončení cílové funkce.

Top- ihned po vstupu cílové funkce.

Bottom- bezprostředně před každým návratem v cílové funkci.

funcname- název cílové funkce.

Pokud cílová funkce obsahuje funkci StartProfile, funkce SuspendProfile je vložena před ní.

ResumeOnly:{Before|After|Top|Bottom},funcname

Spustí nebo obnoví shromažďování dat během spuštění profilování.

Je obvykle používán ke spuštění profilování poté, co možnost SuspendOnly profilování zastavila.Vloží v určeném umístění rozhraní API ResumeProfile.

Before- bezprostředně před vstupem cílové funkce.

After- ihned po ukončení cílové funkce.

Top- ihned po vstupu cílové funkce.

Bottom- bezprostředně před každým návratem v cílové funkci.

funcname- název cílové funkce.

Pokud cílová funkce obsahuje funkci StopProfile, funkce ResumeProfile je vložena po ní.

Viz také

Referenční dokumentace

VSPerfMon

VSPerfCmd

VSPerfReport

Upozornění VSInstr

Další zdroje

Profilování zobrazení sestav nástroje