MarkProfile
O MarkProfile método insere uma marca de perfil no arquivo. vsp. Criação de perfil para o segmento que contém o MarkProfile função deve estar Diante para a marca a ser inserido.
PROFILE_COMMAND_STATUS PROFILERAPI MarkProfile( long lMarker );
Parâmetros
lMarker
O marcador de inserir. O marcador deve ser maior ou igual a 0 (zero).
Valor de Propriedade/Valor Retornado
A função indica sucesso ou fracasso usando PROFILE_COMMAND_STATUS enumeração. O valor de retorno pode ser um destes procedimentos:
Enumerador |
Descrição |
---|---|
MARK_ERROR_MARKER_RESERVED |
O parâmetro é menor ou igual a 0. Esses valores são reservados. A marca e o comentário não são registradas. |
MARK_ERROR_MODE_NEVER |
O modo de criação de perfil foi definido como nunca quando a função foi chamada. A marca e o comentário não são registradas. |
MARK_ERROR_MODE_OFF |
O modo de criação de perfil foi definido para desativado quando a função foi chamada. A marca e o comentário não são registradas. |
MARK_ERROR_NO_SUPPORT |
Não há suporte para marcar neste contexto. A marca e o comentário não são registradas. |
MARK_ERROR_OUTOFMEMORY |
Não havia memória disponível para registrar o evento. A marca e o comentário não são registradas. |
MARK_TEXTTOOLONG |
A seqüência de caracteres excede o máximo de 256 caracteres. A seqüência de caracteres de comentário é truncada e a marca e comentário são registradas. |
MARK_OK |
MARK_OK é retornado para indicar êxito. |
Comentários
O valor de marca é inserido no arquivo. vsp cada vez que o código será executado se o segmento que contém a função MarkProfile está sendo perfilado. Você pode chamar MarkProfile várias vezes.
Marcas de perfil são globais em escopo. Por exemplo, uma marca de perfil inserida em um thread pode ser usada para marcar o início ou fim de um segmento de dados em qualquer segmento no arquivo. vsp.
O estado de perfil para o segmento que contém a função de perfil da marca deve estar em quando marcas e comentários inseridos com o comando marcar ou com funções de API (CommentMarkAtProfile, CommentMarkProfile ou MarkProfile).
Importante |
---|
O método de MarkProfile deve ser usado com a instrumentação profiling somente. |
Equivalente do NET Framework
Microsoft.VisualStudio.Profiler.dll
Informações de função
Cabeçalho: Declarado em VSPerf.h
Biblioteca de importação: VSPerf.lib
Exemplo
O código a seguir ilustra a função 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
}