基于 DBus 的实现,我面临一些奇怪的要求。我想知道这是否可能有 2 个实例DBUS_SESSION_BUS
或类似的实例。
好吧,我寻找这个典型要求的原因是我的进程(总线上的节点)是重复的(即有 1 个以上的实例)并且它们都注册了相同的信号。例如,Node-A 和 Node-B 都发出SIGNAL-1
,而 Node-X 和 Node-Y 都想接收SIGNAL-1
(它们已SIGNAL-1
通过dbus_add_match()
调用注册)。
就目前而言,当SIGNAL-1
发出 dbus 守护程序时,dbus 守护程序会将其传递给 Node-X 和 Node-Y。
我的要求是 Node-A 的SIGNAL-
1 应该由 Node-X 接收,而 Node-B 的SIGNAL-1
应该由 Node-B 接收
我尝试/分析的内容:
1. dbus_connection_open_private()
- 没有太多帮助,不确定使用部分,因为可用的文档有限。
2. dbus_bus_get_private()
- 在这种情况下不相关。
3. 考虑replication the daemon - 太复杂,不容易实现。4. 使用S 代替S 的
可能性(有相应的更改) - 再次太复杂并且不确定依赖关系。DBUS_XYX_BU
DBUS_SESSION_BU
我想知道您对此的看法,任何帮助/指示/提醒将不胜感激。
谢谢,马诺伊