正確な時間計測を行う
Home
→
Programming Tips
→
Win32SDK Tips
→
[SDK-003]
ms 単位の時間計測は timeGetTime() が良いと思いますが、そのままでは誤差が発生します。
これは、通知に若干の余裕を OS が持たせているからです。
この余裕を 1ms として、なるべく正確な時間計測をさせましょう。
timeBeginPeriod()、timeEndPeriod() を使います。
■ 定義
#include
<mmsystem.h>
#pragma comment
(
lib
, "winmm.lib")
■ 初期化(InitInstance が最適)
::timeBeginPeriod(1);
■ 終了(ExitInstance が最適)
::timeEndPeriod(1);
後は普通に timeGetTime() を使えばよいです。
Copyright 2005 VALGUS. All Rights Reserved.