[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] Raising events for testing



Okay I have understand the use and mean of poll (pollfd... bla...bla...bla...) I have also discover that there is no Win32 equivalent which work with a file descriptor (unix way...). Win32 has a select method that can be used to emulate the poll function, but the fd_set structure is base on socket and not on a file descriptor. Does anyone know a way to have a select or poll function that works with file descriptor under windows ? (maybe via mingw, I don't know)

Regards,

Arnaud

--------------------------------------------------
From: <arnaud champion devatom fr>
Sent: Friday, January 28, 2011 7:06 PM
To: "Daniel P. Berrange" <berrange redhat com>
Cc: <libvir-list redhat com>
Subject: Re: [libvirt] Raising events for testing

Okay, I'm trying to understand the Python implentation (I'm not a python expert but it seems to be quite readable once you've understand why there is "self" everywhere :) ). The thing I'm not able to understand is the call to the "poll" function as this function doesn't exists in C# in any library at my knows... I'm not fluent with this. Anyone can expliain what poll do ?

Regards

Arnaud

--------------------------------------------------
From: <arnaud champion devatom fr>
Sent: Friday, January 28, 2011 4:53 PM
To: "Daniel P. Berrange" <berrange redhat com>
Cc: <libvir-list redhat com>
Subject: Re: [libvirt] Raising events for testing

Woohoo it will burn my brain :)

--------------------------------------------------
From: "Daniel P. Berrange" <berrange redhat com>
Sent: Friday, January 28, 2011 4:24 PM
To: <arnaud champion devatom fr>
Cc: <libvir-list redhat com>
Subject: Re: [libvirt] Raising events for testing

On Fri, Jan 28, 2011 at 04:17:21PM +0100, arnaud champion devatom fr wrote:
I suffer with the new callback API :)

Does the new callback API need the EventRegisterImpl call ?

Yes, virEventRegisterImpl is required in order to be able to
receive events.

Can anyone explain me the steps to install these callbacks ? I have
a lot of difficulties to understand the polling process in the
sample, does this polling is mandatory ?

Events can arrive at the client socket from libvirtd at
any time. The poll() is used to watch for events arriving
and ensure immediate dispatch. If we didn't do this no
events would be seen until the next API call was made
which is sub-optimal.

The file daemon/events.c shows a complete C implementation
of the event callbacks.

The file examples/domain-events/events-python/domain-events.py
shows a pure Python implementation

The C example program is a very *bad* demo of poll() so ignore
that and look at daemon/events.c instead.

Daniel


--
libvir-list mailing list
libvir-list redhat com
https://www.redhat.com/mailman/listinfo/libvir-list


--
libvir-list mailing list
libvir-list redhat com
https://www.redhat.com/mailman/listinfo/libvir-list



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]