On Thu, Apr 05, 2012 at 06:06:43PM +0800, Zhihua Che wrote:
Hi, everyone
I'm writing application using libvirt and I need call
virDomainGetCPUStats to get domain cpu stats . I learn from API
reference that this function has to be called when domain is running.
So my question is if there is an atomic way to test the domain's state
and get its stats?
Or, it's ok to call this function when domain is not active, but
caller just gets error returned.
In my code, I just call it directly and return error. I wonder if
this programming practice has subtle problem like race condition.
AFAIK there is no way to do this without a race, not least because a
VM can power itself off / crash at literally any time. In virt-top,
we just catch the error and ignore it.
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming blog:
http://rwmj.wordpress.com
Fedora now supports 80 OCaml packages (the OPEN alternative to F#)
http://cocan.org/getting_started_with_ocaml_on_red_hat_and_fedora