2013-03-15 61 views
0

这是一个来自转储的单线程,用于说明问题。没有其他线程持有锁0x00000007d7f78430但仍然等待。Java:为什么这个线程在它已经拥有锁的时候等待?

"main" prio=6 tid=0x000000000033b800 nid=0x2478 in Object.wait() [0x000000000257d000]   java.lang.Thread.State: TIMED_WAITING (on object monitor) 
at java.lang.Object.wait(Native Method) 
- waiting on <0x00000007d7f78430> (a org.osgi.util.tracker.ServiceTracker$AllTracked) 
at org.osgi.util.tracker.ServiceTracker.waitForService(ServiceTracker.java:456) 
- locked <0x00000007d7f78430> (a org.osgi.util.tracker.ServiceTracker$AllTracked) 
at org.apache.camel.test.blueprint.CamelBlueprintHelper.getOsgiService(CamelBlueprintHelper.java:190) 
at org.apache.camel.test.blueprint.CamelBlueprintHelper.getOsgiService(CamelBlueprintHelper.java:165) 
at org.apache.camel.test.blueprint.CamelBlueprintTestSupport.createCamelContext(CamelBlueprintTestSupport.java:116) 
at org.apache.camel.test.junit4.CamelTestSupport.doSetUp(CamelTestSupport.java:247) 
at org.apache.camel.test.junit4.CamelTestSupport.setUp(CamelTestSupport.java:217) 
at org.apache.camel.test.blueprint.CamelBlueprintTestSupport.setUp(CamelBlueprintTestSupport.java:50) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
+3

张贴代码.. – Pragnani 2013-03-15 16:23:42

+0

您必须等到... – ZhongYu 2013-03-15 16:25:27

+0

@ zhong.j.yu之前,您必须等待锁定,但是一旦您等待显示器被释放。 – assylias 2013-03-15 16:28:49

回答

相关问题