Fwd: Circular calls with DBUS
brian.mattern at gmail.com
Fri Mar 23 09:46:29 PDT 2007
On Fri, Mar 23, 2007 at 03:30:07PM +0000, Rob Taylor wrote:
> Note that only code providing objects on the bus needs to use async
> calling, normal clients can still use synchronous calls.
I have to disagree. I'm currently working on some dbus bindings for use
in e17. The entire window manager runs as a single thread, so
synchronous calls are avoided wherever possible. For single purpose
processes blocking generally isn't an issue, and keeps things simple.
But, in the context of a larger app, I would argue that everything
should be async. (I don't want my WM/music player/etc to rely on the
quick response time of a daemon to keep functioning).
Most of the c convenience libraries for dbus apis only provide blocking
calls, which makes them unusable for our purposes. Fortunately though,
providing our own async wrappings of these apis isn't a whole lot of
Anyway, I guess the validity of your statement depends on what you mean
by 'normal clients' :)
More information about the dbus