Função EnableThreadProfiling (winbase.h)
Habilita a criação de perfil de thread no thread especificado.
Sintaxe
DWORD EnableThreadProfiling(
[in] HANDLE ThreadHandle,
[in] DWORD Flags,
[in] DWORD64 HardwareCounters,
[out] HANDLE *PerformanceDataHandle
);
Parâmetros
[in] ThreadHandle
O identificador para o thread no qual você deseja habilitar a criação de perfil. Esse deve ser o thread atual.
[in] Flags
Para receber dados de criação de perfil de thread, como contagem de comutadores de contexto, defina esse parâmetro como THREAD_PROFILING_FLAG_DISPATCH; caso contrário, defina como 0.
[in] HardwareCounters
Para receber dados do contador de desempenho de hardware, defina esse parâmetro como uma máscara de bits que identifica os contadores de hardware a serem coletados. Você pode especificar até 16 contadores de desempenho. Cada bit está relacionado diretamente ao índice de contador de hardware baseado em zero para os contadores de desempenho de hardware que você configurou. Defina como zero se você não estiver coletando dados do contador de hardware. Se você definir um bit para um contador de hardware que não foi configurado, o valor do contador lido para esse contador será zero.
[out] PerformanceDataHandle
Um identificador opaco que você usa ao chamar as funções ReadThreadProfilingData e DisableThreadProfiling .
Retornar valor
Retorna ERROR_SUCCESS se a chamada for bem-sucedida; caso contrário, um código de erro do sistema (consulte Winerror.h).
Comentários
Você deve chamar a função DisableThreadProfiling antes de sair do thread.
Para criar o perfil de contadores de desempenho de hardware, você precisa de um driver para configurar os contadores. Os contadores de desempenho são configurados globalmente para o sistema, portanto, cada thread tem acesso aos mesmos dados do contador de hardware. Os contadores devem ser configurados antes de habilitar a criação de perfil. Para obter informações sobre como configurar contadores de desempenho de hardware, consulte a função KeSetHardwareCounterConfiguration no WDK (Kit de Driver do Windows).
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 7 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 R2 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | winbase.h (incluir Windows.h) |
Biblioteca | Kernel32.lib |
DLL | Kernel32.dll |