• 4482阅读
  • 0回复

请问定时器为什么被阻塞?谢谢 [复制链接]

上一主题 下一主题
离线shoreway
 
只看楼主 倒序阅读 楼主  发表于: 2007-10-24
我创建了两个线程A和B,每个线程创建一个定时器。
与线程A中的定时器timeout连接的槽函数为
{
  timer->stop();
    iWaitCnt++;
    mutex.lock();
    waitCondition.wait( &mutex, ULONG_MAX  );
    mutex.unlock();
    timer->start(1000);
}
与线程B中的定时器timeout连接的槽函数为
{
    timer->stop();
    iWakeCnt++;
    timer->start(1000);
}
运行后,发现B中的定时器没有运行.如果把A中的waitCondition.wait( &mutex, ULONG_MAX  );改为
waitCondition.wait( &mutex,500  );那么A,B两个线程中的定时器都能正常触发。请问是为什么?谢谢
快速回复
限100 字节
 
上一个 下一个