【发布时间】:2012-10-18 00:15:41
【问题描述】:
我在我的程序中使用定时器:timer = new Qtimer(); connect(timer, SIGNAL(timeout()), this, SLOT(readData()));timer.start(1000);
还有其他插槽可能由 UI 交互触发:/*SLOT FUNCTION*/ on_pushbutton_triggered(){..../*write data*/...}。
(代码是用qt写的,不过我觉得是个常见问题)
所以我担心潜在的问题:可能 readData() 读取错误数据而 on_pushbutton_triggereed() 正在写入数据?
我不太熟悉计时器在屏幕后面的真正工作方式:它与我的程序在同一个线程中吗?
readData() 和 on_pushbutton_triggereed() 是否会被调用、执行、完成并连续没有互斥问题(即:我必须使用lock()和unlock())?感谢您的阅读!我真的希望你的提示!
【问题讨论】:
标签: multithreading timer mutex