gpt4 book ai didi

c++ - QTimer 自行停止和启动

转载 作者:行者123 更新时间:2023-11-28 03:51:22 30 4
gpt4 key购买 nike

这是我使用 QTimer 的方式:

QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(update()));
timer->setInterval(1000);
timer->start();

程序监视 update() 函数并在其中打印当前时间。通常它按预期工作,它每秒打印一次时间,但是当程序开始处理其他作业时,会有一些中断,例如 5 到 8 秒。

Qt Documentation提到像 1 毫秒这样的精度问题,显然我还有另一个问题。有什么想法吗?

最佳答案

QTimer(以及所有基于事件的消息传递)不是中断驱动的。这意味着您不能保证您会在发送事件时立即收到事件。准确性描述了事件是如何触发的,而不是它是如何传递的。

如果您不在长作业上执行线程处理,请调用 QCoreApplication::processEvents()在漫长的过程中定期确保您的插槽被调用。

关于c++ - QTimer 自行停止和启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5394913/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com