It's before the call, when deadlock occured, I attached the debugger, and then 
found out it's the windows WaitForObject call keeps waiting. Not sure if the 
server side finished the call or not. I will pay more attention next time.

--- On Tue, 9/20/11, Klaus Espenlaub <[email protected]> wrote:


From: Klaus Espenlaub <[email protected]>
Subject: Re: [vbox-dev] CMachine.SetExtraData() deadlocks
To: [email protected]
Date: Tuesday, September 20, 2011, 2:27 PM


On 20.09.2011 18:40, Huihong Luo wrote:
> very rarely, I got deadlock by invoking this method.
> After debugging, it deads lock at WaitForSingleObject Windows API inside
> some rpc stub.

Is the deadlock before (or after) actually invoking the method? Haven't seen 
such issues in a long time, but if they're happening they're very nasty to 
debug, because the COM machinery internals is totally undocumented closed 
source code.

> What is the correct context to invoke this call? such as threading
> requirement?

VBoxSVC is a "local" COM service which by design supports arbitrary concurrency.

The caller should initialize the COM client side appropriately, but that's a 
generic requirement which isn't specific to VirtualBox.

Klaus

> Thanks
> 
> 
> 
> _______________________________________________
> vbox-dev mailing list
> [email protected]
> http://vbox.innotek.de/mailman/listinfo/vbox-dev

_______________________________________________
vbox-dev mailing list
[email protected]
http://vbox.innotek.de/mailman/listinfo/vbox-dev
_______________________________________________
vbox-dev mailing list
[email protected]
http://vbox.innotek.de/mailman/listinfo/vbox-dev

Reply via email to