[libvirt] [RFC] making (newly public) EventImpl interface moreconsistent

Daniel P. Berrange berrange at redhat.com
Wed Nov 5 11:51:22 UTC 2008

On Tue, Nov 04, 2008 at 07:04:54AM -0500, Ben Guthro wrote:
> I'll respond now while I'm looking at this, as Dave may 
> not be able to get to this until later today
> I was talking with Dave about this yesterday, and if I'm not
> mistaken, this idea comes from some of the implementations for
> either DevKit, DBus, or libHAL (I can't remember which one he
> was looking at at that particular moment) 
> Essentially, if I understand the model correctly, they have 2 
> fd sets - one for reading, one for writing.

DevKit & HAL are just APIs built ontop of DBus, so the key here
is integration with DBus watch APIs. AFAIK, those only require
that the event loop impl have one callback per unique FD. 

> I could see an additional use where you have multiple callbacks
> - one for data, and one for error handling. These 2 calls to 
> AddHandle would take the sale fd, but would have different event
> mask sets, for the different callbacks.

QT allows this model for its QSocketNotifier class, indeed it
actually requires it, but GLib leaves this unspecified, and
I've not been able to determine from the code whether its possible
to register the same FD twice with GLib.

|: Red Hat, Engineering, London   -o-   http://people.redhat.com/berrange/ :|
|: http://libvirt.org  -o-  http://virt-manager.org  -o-  http://ovirt.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505  -o-  F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|

More information about the libvir-list mailing list