コードでGetLocalTimeを使用して、特定の関数の処理にかかる時間を確認しています。
この目的のために、GetLocalTimeまたはGetSystemTimeのどちらが最良の選択ですか?
それらは同じですか?コードのパフォーマンスを測定する場合、どちらを使用する必要がありますか?
コードでGetLocalTimeを使用して、特定の関数の処理にかかる時間を確認しています。
この目的のために、GetLocalTimeまたはGetSystemTimeのどちらが最良の選択ですか?
それらは同じですか?コードのパフォーマンスを測定する場合、どちらを使用する必要がありますか?
2 つの関数の解像度は同じです。違いはGetLocalTime
、現在のタイムゾーン (つまり、UTC ではなくローカル時間) に合わせて調整されたシステム時間を返すことです。
これらの関数のいずれかを使用してコードのパフォーマンスを測定することは、おそらく理想的ではありません。代わりに、オーバーヘッドがはるかに少なく、可能な限り最高の解像度が得られるパフォーマンス カウンター関数の使用を検討します。
詳細については、MS ナレッジ ベースの記事を参照してください: QueryPerformanceCounter をタイム コードに使用する方法(サンプル コードは VB にありますが、概念は C++ にも適用されます。基本的には、QueryPerformanceCounter
「ティック」の前後を取得しQueryPerformanceFrequency
、ティックを変換するために使用します。秒まで)。