在Qt中实现临界区

| 我需要在Qt(4.7.3,Windows XP)中认识关键部分。 例如,公共插槽:
void MyClass::myPublicSlot(...local params...)
{

...
block of code working with global params;
...

}

功能“ 1”由定时器启动。 执行该功能可能需要很长时间,有时甚至超过计时器的滴答声(例如,单击按钮)。 需要锁定
block of code working with global params
。 函数调用可以是多线程和单线程。 附言我尝试使用QMutex和QMutexLocker,但在单线程情况下会导致死锁。     
已邀请:
QMutex
就是你想要的。也许您正在递归使用它,但没有创建递归互斥体?这是单线程代码中死锁的唯一解释。     

要回复问题请先登录注册