|
아래와 같이 사용하시면 될듯 합니다.
참고로 WaitableTimer를 사용해도 될듯 하구요...
그럼 즐프~~ 하세요
class TTestThread : public TThread
{
private:
DWORD m_dwTick;
bool __fastcall CheckTick(DWORD dwTimeout);
protected:
void __fastcall Execute();
};
bool __fastcall TTestThread::CheckTick(DWORD dwTimeout)
{
unsigned __int64 ulCurrTick = ::GetTickCount();
if(ulCurrTick < m_dwTick)
ulCurrTick += 0x100000000I64;
if(dwTimeout <= ulCurrTick - m_dwTick)
{
m_dwTick = ::GetTickCount();
return true;
}
return false;
}
void __fastcall TTestThread::Execute()
{
while(!Terminated)
{
if(CheckTick(10) == true)
{
Data_Read();
}
else
{
if(user_stop == true)
break;
else
Sleep(1); // <-- CPU사용율 때문에~~
}
}
}
|