Cxxxxx::func()
{
......
settimer(1,100);
......
}void Cxxxxx::OnTimer(UINT nIDEvent)
{
if(1==nIDEvent)
{
func2();//这个函数执行会超过100毫秒时间
} if(2==nIDEvent)
{
func3();
}}以上代码中在func()中启动了定时器1,当定时器时间到到时在OnTimer()中会去执行1号定时器的处理函数func2(),假设func2()需要执行很长时间,那么当1号定时器第二次timerout时,是否还会进入到OnTimer()中的func2(),还是等待前一个func2()执行完在进入,又或者直接丢掉这个timerout事件?另外,如果在执行func2()的时候,2号定时器时间到,情况又会如何?
{
......
settimer(1,100);
......
}void Cxxxxx::OnTimer(UINT nIDEvent)
{
if(1==nIDEvent)
{
func2();//这个函数执行会超过100毫秒时间
} if(2==nIDEvent)
{
func3();
}}以上代码中在func()中启动了定时器1,当定时器时间到到时在OnTimer()中会去执行1号定时器的处理函数func2(),假设func2()需要执行很长时间,那么当1号定时器第二次timerout时,是否还会进入到OnTimer()中的func2(),还是等待前一个func2()执行完在进入,又或者直接丢掉这个timerout事件?另外,如果在执行func2()的时候,2号定时器时间到,情况又会如何?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货