queryThreadCycleTime 函数 (realtimeapiset.h)

检索指定线程的周期时间。

语法

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

参数

[in] ThreadHandle

线程的句柄。 句柄必须具有PROCESS_QUERY_INFORMATION或PROCESS_QUERY_LIMITED_INFORMATION访问权限。 有关详细信息,请参阅 进程安全和访问权限

[out] CycleTime

线程使用的 CPU 时钟周期数。 此值包括在用户模式和内核模式下花费的周期数。

返回值

如果该函数成功,则返回值为非零值。

如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。

注解

若要枚举进程的线程,请使用 Thread32FirstThread32Next 函数。 若要获取线程标识符的线程句柄,请使用 OpenThread 函数。

不要尝试将 QueryThreadCycleTime 返回的 CPU 时钟周期转换为已用时间。 此函数使用 CPU 提供的计时器服务,这些服务在实现上可能会有所不同。 例如,在更改 CPU 运行频率时,某些 CPU 会改变计时器的频率,而其他 CPU 将保持固定速率。 CPU 供应商提供的文档中介绍了每个 CPU 的行为。

若要编译使用此函数的应用程序,请将_WIN32_WINNT定义为 0x0600 或更高版本。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 realtimeapiset.h (包括 Windows 7 上的 Windows.h、Windows Server 2008 Windows Server 2008 R2)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

QueryIdleProcessorCycleTime

QueryProcessCycleTime