MarkProfile
Metoda MarkProfile vloží značku profilu do souboru .vsp.Aby se značky vložily, musí být zapnuto profilování vlákna obsahující funkci MarkProfile.
PROFILE_COMMAND_STATUS PROFILERAPI MarkProfile( long lMarker );
Parametry
lMarker
Vkládaná značka.Značka musí být větší nebo rovna nule.
Hodnota/Návratová hodnota vlastnosti
Funkce označuje úspěch nebo neúspěch pomocí výčtu PROFILE_COMMAND_STATUS.Návratová hodnota může být jedna z následujících:
Výčet |
Description |
---|---|
MARK_ERROR_MARKER_RESERVED |
Parametr je menší nebo roven 0.Tyto hodnoty jsou vyhrazeny.Značka a komentáře nejsou zaznamenávány. |
MARK_ERROR_MODE_NEVER |
Profilovací režim byl nastaven na hodnotu NEVER, když byla funkce volána.Značka a komentáře nejsou zaznamenávány. |
MARK_ERROR_MODE_OFF |
Režimu profilování byl v době volání funkce nastaven na vypnutý.Značka a komentáře nejsou zaznamenávány. |
MARK_ERROR_NO_SUPPORT |
V tomto kontextu neexistuje podpora značek.Značka a komentáře nejsou zaznamenávány. |
MARK_ERROR_OUTOFMEMORY |
Paměť nebyla pro záznam události dostupná.Značka a komentáře nejsou zaznamenávány. |
MARK_TEXTTOOLONG |
Řetězec přesahuje maximální délku 256 znaků.Řetězec komentáře je zkrácen a značka a komentář jsou zaznamenány. |
MARK_OK |
MARK_OK je vráceno pro označení úspěchu. |
Poznámky
Hodnota značky je vložena do souboru .vsp při každém spuštění kódu, pokud je vlákno obsahující funkci MarkProfile profilováno.Metodu MarkProfile lze volat vícekrát.
Značky profilu jsou v rámci rozsahu globální.Například značka profilu vložená do jednoho vlákna může být použita pro označení začátku nebo konce segmentu dat v libovolném vlákně v rámci souboru .vsp.
Stav profilování vlákna, které obsahuje funkci profilu značky musí být při vkládání značek a komentářů pomocí příkazu Mark nebo pomocí funkcí rozhraní API (CommentMarkAtProfile, CommentMarkProfile nebo MarkProfile) zapnutý.
Důležité |
---|
Metoda MarkProfile by měla být použita pouze s profilováním instrumentace. |
Ekvivalent v rozhraní .NET Framework
Microsoft.VisualStudio.Profiler.dll
Informace o funkci
Hlavičkový soubor: Deklarovaná ve VSPerf.h
Knihovna importů: VSPerf.lib
Příklad
Následující kód ilustruje funkci MarkProfile.
void ExerciseMarkProfile()
{
// Declare and initialize variables to pass to
// MarkProfile. The values of these parameters
// are assigned based on the needs of the code;
// and for the sake of simplicity in this example,
// the variables are assigned arbitrary values.
int markId = 03;
// Declare enumeration to hold return value of
// call to MarkProfile.
PROFILE_COMMAND_STATUS markResult;
// Variables used to print output.
HRESULT hResult;
TCHAR tchBuffer[256];
markResult = MarkProfile(markId);
// Format and print result.
LPCTSTR pszFormat = TEXT("%s %d.\0");
TCHAR* pszTxt = TEXT("MarkProfile returned");
hResult = StringCchPrintf(tchBuffer, 256, pszFormat,
pszTxt, markResult);
#ifdef DEBUG
OutputDebugString(tchBuffer);
#endif
}
Viz také
Další zdroje
Referenční dokumentace rozhraní API produktu Visual Studio Profiler (nativní)