QueryIdleProcessorCycleTime function (realtimeapiset.h)
Retrieves the cycle time for the idle thread of each processor in the system.
On a system with more than 64 processors, this function retrieves the cycle time for the idle thread of each processor in the processor group to which the calling thread is assigned. Use the QueryIdleProcessorCycleTimeEx function to retrieve the cycle time for the idle thread on each logical processor for a specific processor group.
Syntax
BOOL QueryIdleProcessorCycleTime(
[in, out] PULONG BufferLength,
[out] PULONG64 ProcessorIdleCycleTime
);
Parameters
[in, out] BufferLength
On input, specifies the size of the ProcessorIdleCycleTime buffer, in bytes. This buffer is expected to be 8 times the number of processors in the group.
On output, specifies the number of elements written to the buffer. If the buffer size is not sufficient, the function fails and this parameter receives the required length of the buffer.
[out] ProcessorIdleCycleTime
The number of CPU clock cycles used by each idle thread. This buffer must be 8 times the number of processors in the system in size.
Return value
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
Remarks
To compile an application that uses this function, define _WIN32_WINNT as 0x0600 or later.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Vista [desktop apps only] |
Minimum supported server | Windows Server 2008 [desktop apps only] |
Target Platform | Windows |
Header | realtimeapiset.h (include Windows.h on Windows 7, Windows Server 2008 Windows Server 2008 R2) |
Library | Mincore.lib |
DLL | Kernel32.dll |