MarkProfile
Aggiornamento: novembre 2007
Il metodo MarkProfile inserisce un indicatore di analisi nel file vsp. Per l'inserimento dell'indicatore, è necessario che l'analisi del thread contenente la funzione MarkProfile sia impostata su ON.
PROFILE_COMMAND_STATUS PROFILERAPI MarkProfile( long lMarker );
Parametri
lMarker
Indicatore da inserire che deve essere maggiore o uguale a 0 (zero).
Valore proprietà/Valore restituito
La funzione indica esito positivo o negativo utilizzando l'enumerazione PROFILE_COMMAND_STATUS. Il valore restituito può essere uno dei seguenti:
Enumerator |
Descrizione |
---|---|
MARK_ERROR_MARKER_RESERVED |
Il valore del parametro è minore o uguale a 0. Questi valori sono riservati. L'indicatore e il commento non vengono registrati. |
MARK_ERROR_MODE_NEVER |
La modalità di profilo è stata impostata su NEVER quando è stata chiamata la funzione. L'indicatore e il commento non vengono registrati. |
MARK_ERROR_MODE_OFF |
La modalità di analisi era impostata su OFF quando è stata chiamata la funzione. L'indicatore e il commento non vengono registrati. |
MARK_ERROR_NO_SUPPORT |
In questo contesto non sono supportati indicatori. L'indicatore e il commento non vengono registrati. |
MARK_ERROR_OUTOFMEMORY |
Memoria non disponibile per registrare l'evento. L'indicatore e il commento non vengono registrati. |
MARK_TEXTTOOLONG |
La stringa supera il limite massimo di 256 caratteri. La stringa di commento viene troncata e l'indicatore e il commento vengono registrati. |
MARK_OK |
MARK_OK viene restituito per indicare esito positivo. |
Note
Il valore dell'indicatore viene inserito nel file vsp a ogni esecuzione del codice se è in corso il profilo del thread che contiene la funzione MarkProfile. Tale funzione può essere chiamata più volte.
Gli indicatori di profilo hanno un ambito globale. Un indicatore di profilo inserito in un thread può, ad esempio, essere utilizzato per contrassegnare l'inizio o la fine di un segmento di dati in qualsiasi thread del file vsp.
La stato di analisi per il thread contenente la funzione relativa all'indicatore di analisi deve essere impostato su ON quando vengono inseriti indicatori e commenti con il comando Mark o con le funzioni API (CommentMarkAtProfile, CommentMarkProfile o MarkProfile).
Nota importante: |
---|
I metodi MarkProfile vanno utilizzati esclusivamente con l'analisi mediante strumentazione. |
Equivalente .NET Framework
Microsoft.VisualStudio.Profiler.dll
Informazioni sulla funzione
Intestazione: dichiarata in VSPerf.h
Libreria di importazione: VSPerf.lib
Esempio
Nel codice seguente è illustrata la funzione 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
}
Vedere anche
Altre risorse
Riferimenti per le API del profiler di Visual Studio (native)