当我研究Linux进程间通信时,我知道有一些方法:管道,消息队列,套接字,信号,共享内存,信号量,并且没有名为Dbus的方法。

但是今天,当我研究Dbus时,我读到:“D-Bus是用于进程间通信(IPC)的系统”(请参阅​​链接:https://en.wikipedia.org/wiki/D-Bus)

所以我的问题是:
DBus和其他IPC方法之间有什么区别?

最佳答案

一对一的ipc方法具有大量的协作过程,可以引起密集的网格。但是在Dbus的情况下,每个进程可以连接到具有授予访问权限的任意数量的进程。在公共(public)的单个共享通道上,用户可以连接自己的 session 或新 session ,而不会干扰其他用户的 session 。这大大提高了性能

引用链接

https://blogs.gnome.org/abustany/2010/05/20/ipc-performance-the-return-of-the-report/

这显示了DBus性能与定制IPC系统的比较。您可以更好地了解Dbus的性能

关于c++ - DBus与其他进程间通信方法之间的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33887063/

10-10 12:36