Função QueryThreadCycleTime (realtimeapiset.h)

Recupera o tempo de ciclo do thread especificado.

Sintaxe

BOOL QueryThreadCycleTime(
  [in]  HANDLE   ThreadHandle,
  [out] PULONG64 CycleTime
);

Parâmetros

[in] ThreadHandle

Um identificador para o thread. O identificador deve ter o acesso PROCESS_QUERY_INFORMATION ou PROCESS_QUERY_LIMITED_INFORMATION direito. Para obter mais informações, consulte Direitos de Acesso e Segurança do Processo.

[out] CycleTime

O número de ciclos de relógio de CPU usados pelo thread. Esse valor inclui ciclos gastos no modo de usuário e no modo kernel.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.

Comentários

Para enumerar os threads do processo, use as funções Thread32First e Thread32Next . Para obter o identificador de thread para um identificador de thread, use a função OpenThread .

Não tente converter os ciclos de relógio da CPU retornados por QueryThreadCycleTime em tempo decorrido. Essa função usa serviços de temporizador fornecidos pela CPU, que podem variar na implementação. Por exemplo, algumas CPUs variarão a frequência do temporizador ao alterar a frequência em que a CPU é executada e outras a deixarão a uma taxa fixa. O comportamento de cada CPU é descrito na documentação fornecida pelo fornecedor da CPU.

Para compilar um aplicativo que usa essa função, defina _WIN32_WINNT como 0x0600 ou posterior.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho realtimeapiset.h (inclua Windows.h no Windows 7, Windows Server 2008 Windows Server 2008 R2)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

QueryIdleProcessorCycleTime

QueryProcessCycleTime