event-loop agnostic Python bindings
Anthony Baxter
anthony at interlink.com.au
Fri May 6 02:49:33 PDT 2005
The current twisted/dbus bindings[1] rely on the glib event loop (because
that's what the dbus-python bindings use), which means using either the
gtk2 or glib event loops. It would be nice if there was a non-event-loop
specific way to do this - for Twisted, this would allow us to work with any
event loop (called reactors in Twisted). The API needed would be fairly
simple - we just need a way to say "give me the next pending dbus message if
there is one" in a non-blocking way. We can then write all of the code to
dispatch that message to the correct place in Python. We'd then have a dbus
LoopingCall running in the reactor that checked for messages every 20ms or
so. An optional way to do it would be to expose a socket-like object that the
event loop's select/poll/whatever call can check, but this is probably a bit
too lowlevel.
What do people think?
[1] http://svn.twistedmatrix.com/cvs/sandbox/anthony/dbus/
--
Anthony Baxter <anthony at interlink.com.au>
It's never too late to have a happy childhood.
More information about the dbus
mailing list