次の方法で共有


QueryThreadCycleTime 関数 (realtimeapiset.h)

指定したスレッドのサイクル時間を取得します。

構文

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

パラメーター

[in] ThreadHandle

スレッドのハンドル。 ハンドルには、PROCESS_QUERY_INFORMATIONまたはPROCESS_QUERY_LIMITED_INFORMATIONアクセス権が必要です。 詳細については、「プロセス セキュリティとアクセス権の」を参照してください。

[out] CycleTime

スレッドによって使用される CPU クロック サイクルの数。 この値には、ユーザー モードとカーネル モードの両方で費やされたサイクルが含まれます。

戻り値

関数が成功した場合、戻り値は 0 以外です。

関数が失敗した場合、戻り値は 0 です。 拡張エラー情報を取得するには、GetLastError呼び出します。

備考

プロセスのスレッドを列挙するには、Thread32First を使用し、Thread32Next 関数 します。 スレッド識別子のスレッド ハンドルを取得するには、OpenThread 関数を使用します。

QueryThreadCycleTime によって返される CPU クロック サイクルを経過時間に変換しないでください。 この関数は、CPU によって提供されるタイマー サービスを使用します。これは実装によって異なる場合があります。 たとえば、CPU の実行頻度を変更するときにタイマーの頻度が変わる CPU もあれば、固定レートのままにしておく CPU もあります。 各 CPU の動作については、CPU ベンダーが提供するドキュメントで説明されています。

この関数を使用するアプリケーションをコンパイルするには、_WIN32_WINNTを 0x0600 以降として定義します。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista [デスクトップ アプリのみ]
サポートされる最小サーバー Windows Server 2008 [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー realtimeapiset.h (Windows 7、Windows Server 2008 Windows Server 2008 R2 の Windows.h を含む)
ライブラリ Mincore.lib
DLL Kernel32.dll

関連項目

QueryIdleProcessorCycleTime

QueryProcessCycleTime