【发布时间】:2012-06-14 00:54:51
【问题描述】:
到目前为止,我项目中的应用程序通过 qtdbus 使用同步调用进行通信。但是,我现在需要将其中一些调用转换为异步调用。 为此,我选择使用 qtdbus 中提供的这个 API QDBusAbstractInterface::callWithCallback 但问题是,当前的实现将这些 qtdbus 同步调用分散在代码中的很多地方,并且这些同步调用之后的代码 sn-ps 假设只有当前面的调用已成功服务并且一个得到答复。 当调用更改为异步时,情况将不再如此。此外,调用是在不同的上下文中进行的,所以我需要在每次调用 qtdbus 之前维护系统的状态,以便在收到回复时知道该怎么做。 真的有机会以某种方式将调用转换为异步,而不会大幅破坏当前代码的结构吗? 我能想到的一种方法是使用 FSM 模式。 任何提示或设计建议将不胜感激。 谢谢!
【问题讨论】: