我面临着基于DBus实现的一些奇怪的要求。我想知道是否可以有DBUS_SESSION_BUS
的2个实例或类似的任何内容。
好吧,我正在寻找这个典型要求的原因是我的进程(总线上的节点)是重复的(即有1+实例)并且它们都注册了相同的信号。
例如,Node-A和Node-B都发出SIGNAL-1
,Node-X和Node-Y都希望收到SIGNAL-1
(他们已SIGNAL-1
注册dbus_add_match()
打电话)。
现在,当发出SIGNAL-1
时,dbus守护程序将它传递给Node-X和Node-Y。
我的要求是节点-A SIGNAL-
1应该由Node-X接收,Node-B的SIGNAL-1
应该由Node-B接收
我的尝试/分析:
1. dbus_connection_open_private()
- 没有多大帮助,不确定使用部分,因为有限的文件可用
2. dbus_bus_get_private()
- 与此情景无关。
3.考虑复制守护进程 - 太复杂而且不易实现。
4.使用DBUS_XYX_BU
S代替DBUS_SESSION_BU
S(具有相应的更改)的可能性 - 再次过于复杂且不确定依赖性。
我想知道您对此的看法,非常感谢任何帮助/方向/负责人。
谢谢, 的Manoj