QueryInterruptTimePrecise 関数 (realtimeapiset.h)

QueryInterruptTime よりも正確な形式で、現在の割り込み時間数を取得します。

構文

void QueryInterruptTimePrecise(
  [out] PULONGLONG lpInterruptTimePrecise
);

パラメーター

[out] lpInterruptTimePrecise

100 ナノ秒のシステム時間単位で割り込み時間数を受け取る ULONGLONG へのポインター。 秒を取得するには、1,000 万 (1e7) で除算します (1 秒に 1e9 ナノ秒があるため、1 秒に 1e7 100 ナノ秒があります)。

戻り値

なし

解説

QueryInterruptTimePreciseQueryInterruptTime ルーチンに似ていますが、より正確です。 QueryInterruptTime によって報告される割り込み時間は、システム クロック タイマーの最新のティックに基づいています。 システム クロック タイマーは、システム クロックの割り込みを定期的に生成するハードウェア タイマーです。 システム クロック タイマー割り込みの間隔はシステム クロック ティックと呼ばれ、通常はハードウェア プラットフォームに応じて 0.5 ミリ秒から 15.625 ミリ秒の範囲です。 QueryInterruptTime によって取得される割り込み時間の値は、システム クロック ティック内で正確です。

QueryInterruptTime よりも正確なシステム時刻値を指定するために、QueryInterruptTimePrecise はタイマー ハードウェアを直接読み取るため、QueryInterruptTimePrecise 呼び出しは QueryInterruptTime 呼び出しよりも遅くなる可能性があります。

KeQueryTimeIncrement ルーチンを呼び出して、システム クロック ティックの継続時間を決定します。

QueryInterruptTime の「解説」も参照してください。

メモQueryInterruptTimePrecise 関数は、Windows のデバッグ ("checked") ビルドで異なる結果を生成します。これは、割り込み時間数とティック数が約 49 日進んでいるためです。 これは、システムが長時間実行されるまで発生しない可能性があるバグを特定するのに役立ちます。 チェックされたビルドは、 Microsoft Developer Network (MSDN) Web サイトを介して MSDN サブスクライバーが使用できます。
 
この関数を使用するアプリケーションをコンパイルするには、_WIN32_WINNTを 0x0601 以降として定義します。 詳細については、「 Windows ヘッダーの使用」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 10 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2016 [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー realtimeapiset.h
Library Mincore.lib
[DLL] Kernel32.dll

関連項目

割り込み時間

QueryInterruptTime

QueryUnbiasedInterruptTime

QueryUnbiasedInterruptTimePrecise

システムの電源状態

Windows タイム