--- cvsroot/AnyEvent-DBus/DBus.pm 2010/06/21 19:43:42 1.6 +++ cvsroot/AnyEvent-DBus/DBus.pm 2022/08/14 13:22:52 1.9 @@ -31,15 +31,16 @@ Note that a) a lot inside Net::DBus is still blocking b) if you call a method that blocks, you again block your process (basically anything -but calls to the Net::DBus::Binding::Connection objects block, but -see Net::DBus::Annoation, specifically dbus_call_async) and c) this +but calls to the Net::DBus::Binding::Connection objects block, but see +Net::DBus::Annoation, specifically dbus_call_async) c) the underlying +libdbus is often blocking itself, even with infinite timeouts and d) this module only implements the minimum API required to make Net::DBus work - Net::DBus unfortunately has no nice hooking API. However, unlike L, this module should be fully non-blocking as long as you only use non-blocking APIs (Net::DBus::Reactor blocks on writes). It should also be faster, but Net::DBus is such a -morass os unneeded method calls that speed won't matter much... +morass of unneeded method calls that speed won't matter much... =head2 EXAMPLE @@ -91,7 +92,7 @@ use Net::DBus (); use Net::DBus::Binding::Watch (); -our $VERSION = '0.3'; +our $VERSION = '0.31'; # yup, Net::DBus checks by using exists on %INC... $INC{'Net/DBus/Reactor.pm'} = undef; @@ -166,6 +167,8 @@ $con->set_timeout_callbacks (\&timeout_on, \&watch_off, \&timeout_toggle); # if $con->can ("set_timeout_callbacks"); + + $con->dispatch; # for good measure } =head1 SEE ALSO