RtQueryPerformanceCounter

RtQueryPerformanceCounter retrieves the current value of the high-resolution performance counter (based on the processor’s time-stamp counter, TSC).

Syntax

Copy
BOOL RtQueryPerformanceCounter(
    [out]   LARGE_INTEGER* lpPerformanceCount
);

Parameters

[out] lpPerformanceCount

Pointer to a variable that receives the current performance-counter value, in counts.

Return Value

If the function succeeds, it returns a non-zero value. If the function fails, it returns zero. Call GetLastError to obtain an error code.

Remarks

On a multiprocessor computer, use RtQueryPerformanceCounter rather than RtGetClockTime. Using RtGetClockTime on more than one processor retrieves times that are not accurately aligned with each other, even when the functions are executed simultaneously.

To specify processor affinity for a thread, use the SetThreadAffinityMask function.

In a Windows process, RtQueryPerformanceFrequency call may return different frequency than the QueryPerformanceFrequency call. This is because QueryPerformanceFrequency may be based on HPET. For consistency, use the frequency returned by RtQueryPerformanceFrequency when converting the counters returned from RtQueryPerformanceCounter to time. Use the frequency returned by QueryPerformanceFrequency when converting the counters returned from QueryPerformanceCounter to time.

In a RTSS process, QueryPerformanceFrequency is the same as RtQueryPerformanceFrequency. QueryPerformanceCounter is the same as RtQueryPerformanceCounter.

Requirements

Minimum supported version Header Library

wRTOS 1.0 SDK

RtApi.h

RtApi.lib (Windows), Startup.lib (RTSS)

See Also: