MarkProfile
The MarkProfile método insere uma marca de analisar no arquivo Vsp. Criação de perfil para o thread contendo o MarkProfile função deve ser ativado 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 que 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 retornado pode ser uma das seguintes opções:
Enumerador |
Descrição |
---|---|
MARK_ERROR_MARKER_RESERVED |
O parâmetro é menor ou igual a 0.Esses valores são reservados.A marca e comentário não são registrados. |
MARK_ERROR_MODE_NEVER |
O modo de criação de perfil foi conjunto nunca quando a função foi chamado.A marca e comentário não são registrados. |
MARK_ERROR_MODE_OFF |
O modo de criação de perfil foi definido como OFF quando a função foi chamada.A marca e comentário não são registrados. |
MARK_ERROR_NO_SUPPORT |
Não há marca suporte neste contexto.A marca e comentário não são registrados. |
MARK_ERROR_OUTOFMEMORY |
Não havia memória disponível para registrar o evento.A marca e comentário não são registrados. |
MARK_TEXTTOOLONG |
A seqüência de caracteres excede o máximo de 256 caracteres.A seqüência de comentário será truncada e a marca e comentário são registradas. |
MARK_OK |
MARK_OK é retornada para indicar êxito. |
Comentários
O valor de marca é inserido no arquivo de VSP cada vez que o código será executado se o thread contendo a função MarkProfile está sendo perfilada.Você pode telefonar MarkProfile várias vezes.
Marcas de analisar são global em escopo.Por exemplo, uma marca de analisar inserida em um thread pode ser usada para marcar o início ou participante de um segmento de dados em qualquer thread no arquivo Vsp.
O estado de analisar para o thread que contém a marca de função de analisar deve estar em quando marcas e comentários inseridos com o comando marcar ou com funções de API (CommentMarkAtProfile, CommentMarkProfile ou MarkProfile).
Observação importante: |
---|
Método MarkProfile deve ser usado com a instrumentação criação de perfil somente. |
Equivalente do NET Framework
Microsoft.VisualStudio.criador de perfil.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
}
Consulte também
Outros recursos
(Nativa) de referência do API criador de perfil do Visual Studio