Using timers in vc++ via SetTimer and OnTimer

hi . i am using SetTimer(...) combined with OnTimer(...) in my code to call 2 different methods on 2 different timers. Here's a simplified version of my code to make things clear:

 

SetTimer(1, 100, NULL);     

SetTimer(2, 40, NULL);

...

void CMTDlg::OnTimer(UINT nTimerID)

{

     if (nTimerID == 1)

     {

          //capture an image from the webcam and save it in the 'img' folder

     }

      if (nTimerID == 2)

     {

          //some processing

     }

}

 

 

Now, my assumed working of the code was this: After 100 ms timer1 gets fired,  OnTimer is called, and an image is saved in the img folder. This repeats every 100 ms. Meanwhile, after every 40 ms, timer2 gets fired, OnTimer is called, and some processing takes place. The capturing of images from the webcam is independent of the the processing in timer2, so regardless of how long that processing takes, my images will be generated every 100 ms by timer1. ie, timer1 and timer2 and mutually independent.

But thats not how its working. The processing in timer2 takes a long time, and this is affecting timer1. timer1 does not generate images every 100 ms now. But if I comment out timer2, then the timer1 generates images fine @ every 100 ms.

So my question is, what am I doing wrong and how can I fix it?

Thanks,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值