Well, if the domain is not running then I get this exception with libvirt 0.6.3 and libvirt-java 0.4.2: org.libvirt.LibvirtException: invalid argument in cannot pin vcpus on an inactive domain at org.libvirt.ErrorHandler.processError(Unknown Source) at org.libvirt.Connect.processError(Unknown Source) at org.libvirt.Domain.processError(Unknown Source) at org.libvirt.Domain.getVcpusInfo(Unknown Source) at TestMultiThreadingLibvirtWithError.run(TestMultiThreadingLibvirtWithError.java:20) at java.lang.Thread.run(Thread.java:636) The error message is misleading and current git version gives this exception when the domain is not running: org.libvirt.LibvirtException: Requested operation is not valid: cannot list vcpu pinning for an inactive domain at org.libvirt.ErrorHandler.processError(Unknown Source) at org.libvirt.Connect.processError(Unknown Source) at org.libvirt.Domain.processError(Unknown Source) at org.libvirt.Domain.getVcpusInfo(Unknown Source) at TestMultiThreadingLibvirtWithError.run(TestMultiThreadingLibvirtWithError.java:20) at java.lang.Thread.run(Thread.java:636) And that's perfectly valid, as the complete vCPU information is only available when the domain is running, therefore the exception is expected when you call getVcpusInfo on a non-running domain. Also this has nothing to do with thread-safety. If this isn't the exception you're referring to, then please show a stacktrace of the exception you're seeing. Matthias 2010/9/3 Ravi Pawar <ravifc@xxxxxxxxx>: > thank you for the reply and time you spend. > your guest domain should not be running and then run my program without any > change.you will see an exception where you dont expect it to occur. > libvirt : 0.6.3 and libvirt-java: 0.4.2 i am using. Please let me know if i > miss to provide you any other details. > > > On Fri, Sep 3, 2010 at 3:29 AM, Matthias Bolte > <matthias.bolte@xxxxxxxxxxxxxx> wrote: >> >> 2010/9/2 Ravi Pawar <ravifc@xxxxxxxxx>: >> > please check the java file attached they throws the exception in case of >> > passing. >> > please let me know if i am missing something. >> > >> >> Can you explain in more detail what one should do to reproduce the >> problem you seem to see with the attached code? Also you didn't >> mention which versions of libvirt and libvirt-java you're using. >> >> When I run you example code (with a guest name that exists in my setup >> and libvirt and libvirt-java form current git head) I don't see any >> exceptions. Even when I add e.printStackTrace() to the catch block of >> TestMultiThreadingLibvirtWithError I don't see exceptions. >> >> $ java -classpath >> ./target/libvirt-0.4.6.jar:./ravi:/usr/share/java/jna.jar Test >> start class 0 >> start class 1 >> start class 2 >> start class 3 >> start class 4 >> start class 5 >> start class 6 >> start class 7 >> start class 8 >> start class 9 >> >> So this works for me. >> >> Matthias > > > > -- > Thanks & Regards > > Ravi Pawar >