Reliability of the D-Bus broadcast messages
hp at pobox.com
Tue Mar 22 06:14:29 PDT 2011
On Tue, Mar 22, 2011 at 5:17 AM, Dean Jenkins <djenkins at mvista.com> wrote:
> Please can you clarify what you meant by "reliability" wrt to signals.
> For example, if a D-bus client application registers an interest in a
> signal and the D-bus server application sends that signal, is the
> client application guaranteed to receive that signal ?
It is guaranteed as long as nothing crashes or disconnects or is
buggy. Reply messages (on methods, not signals) give you a way to be
sure the message went through before the other side went away.
There's also some weirdness if the memory limits in the system bus get
involved, but the exact weirdness will probably change and this would
only affect you on the system (not session) bus and only if you were
sending very large or very numerous messages.
> I am asking because we see D-bus monitor showing signals being sent
> but out client application only receives 3 out 5 signals. Obviously
> that breaks our application. It could be bug in our application but I
> just wanted to check that it is not a flaw in D-bus that prevents
> signals not being received 100% of the time.
Agree with Colin that most likely this is some sort of application
issue or thread-related issue.
There's no non-bug reason that 2/5 messages would just randomly get
dropped. It's a bug in something (dbus or app).
More information about the dbus