|
아래는 제가 쓰는 유틸리티 클래스 함수인데 이걸 쓰세요. SleepM(1000); 하면 됩니다.
/* Sleep과 같은 시간지연 함수
Sleep은 지연시간동안 메시지 처리를 하지 않는데 이건 한다. mili Sec단위
* Sleep은 이런 문제때문에 쓰레드에서는 사용하지 말아야 한다.
*/
void KTS_UTIL::SleepM(DWORD miliSec)
{
MSG msg;
DWORD timeout = (miliSec) + GetCurrentTime();
while(GetCurrentTime() < timeout)
{
if(PeekMessage(&msg,NULL,0,0,PM_REMOVE))
{
if(msg.message == WM_QUIT)
{
PostQuitMessage(0);
break;
}
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
}
|