定时器在控制台应用中工作

时间:2011-09-26 15:54:17

标签: c++ timer console

我正在尝试在我的c ++应用程序中使用计时器。

我可以定义我的计时器:

#define  IDT_TIMER  WM_USER + 200 
UINT Timeval;
UINT TimerID = 1;
UINT TimerMS = 20; 

启动停止计时器方法:

UINT NAHDPbx::StartTimer (UINT TimerID)
    {

      UINT    TimerVal;
      TimerVal =  thewindow->SetTimer(TimerID, TimerMS, NULL);  // Starting the Timer
      return TimerVal;

    }// end StartTimer

BOOL NAHDPbx::StopTimer (UINT TimerID)
   {
          if (!KillTimer (TimerID))
          {
           return FALSE;
          }

         return TRUE;

   } // end StopTimer

我按照这样启动计时器:

Timeval=StartTimer(TimerID);

但是在我的代码中,计时器刻度永远不会触发:

void NAHDPbx::OnTimer(UINT nIDEvent)
{
    StopTimer(TimerID);

        //Do stuff

    StartTimer(TimerID);
}

让定时器工作的任何例子?我的最终目标是通过UDP接收数据,并且需要一种同时发送和接收的方式。

1 个答案:

答案 0 :(得分:0)

如果控制台应用程序退出,则计时器处理程序将超出范围,不会发生任何事情。