Один процесс с несколькими службами dbus

Я пытаюсь понять dbus IPC, пожалуйста, помогите мне в этом.

Если нам нужно связаться через dbus, процесс должен получить системную / сеансовую шину, а затем запросить имя для службы и затем зарегистрировать свои объекты / интерфейсы. если я правильно понимаю, разрешено ли иметь несколько служб из одного процесса? Если это разрешено, как dbus различает объекты (узлы) между сервисами.

Заранее спасибо.

1 ответ

Насколько я понимаю, существует одно соединение с демоном на экземпляр процесса, и каждый экземпляр получит свой уникальный идентификатор. (уникальное имя автобуса). Существует также хорошо известное имя шины, которое предоставляет приложение, поэтому вы можете опрашивать определенную известную шину и не должны обращаться к приложениям по уникальным именам.

Например, общеизвестное имя org.bluez, а уникальное имя в моей системе в настоящее время - 1.46.

Вы можете теоретически создать несколько шин из одного процесса, но я не вижу смысла.

Справочный материал: https://pythonhosted.org/txdbus/dbus_overview.html

Другие вопросы по тегам