我有两个相当独立的线程在运行。 一个生成数据,一个包含一些显示逻辑。
我通过一些
传输数据QMetaObject::invokeMethod(processor, "newData");
在发电机侧。 (处理器是Widget中的一些QObject)。
我的数据生成线程可能比另一个更快,一切都变得非常慢。
在我的用例中显示旧数据毫无意义,所以我不希望invokeMethod
调用排队。
应该忽略进一步的调用,或者 - 最好 - 只应该执行最新的调用。
我怎样才能做到这一点?
答案 0 :(得分:0)
newData
方法除了使用零成本复制容器(隐式共享)更新要显示的数据记录并请求窗口小部件更新外,什么都不做。然后,窗口小部件更新应该获取最新数据并显示它。