Re: Is this Race Condition?

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

 



在 2012年4月5日 下午6:38,Daniel P. Berrange <berrange@xxxxxxxxxx> 写道:
> 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.
>
> For a function which is only callable when the domain is running, libvirt
> will return a special error code  VIR_ERR_OPERATION_INVALID  if you invoke
> it when the domain is shutoff.
>
> Thus the race-free way to deal with this scenario is to just call the
> API, and check for VIR_ERR_OPERATION_INVALID. Any other error code is
> an indication of a "real" error situaton.
>
> Regards,
> Daniel
> --

I guess I got it.


[Index of Archives]     [Virt Tools]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]

  Powered by Linux