在覆盆子pi终端上更新时间时,QT挂起的exe文件

时间:2016-06-09 08:22:29

标签: c++ linux qt raspberry-pi

我在qt上有exe文件,在raspberry pi终端上运行。有好几次,我用'sudo date -s“更新我的覆盆子pi时间Thu Jun 09 10:11:00 2016”'。起初,它看起来还不错。但在我这么做之后,我的exe文件无效。谁知道?为什么这发生在我的exe文件中?

1 个答案:

答案 0 :(得分:0)

如果没有源代码,没有人可以说为什么会发生这种情况,但这里有一个猜测如何

未来时间戳是根据当前时间/日期时间计算的,应用程序的某些部分会等待该时间到达。在该时间戳上向前跳过系统时钟将有望匹配条件(如果编码器足够智能以测试futureTime <= now,不仅仅是为了相等),但向后跳过它可能会使应用等待意外的长时间直到条件再次匹配。

修复:使用(单调)计时器而不是计算时间来测试条件和计划事件。请参阅QTimerQTime以及有关Qt timers的一般文档。