[ 
https://issues.apache.org/jira/browse/XMLBEANS-616?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17566815#comment-17566815
 ] 

yanglin commented on XMLBEANS-616:
----------------------------------

i hava this problem too ! 

JVM loading the class ,the thread is runnable ,but jvm load the class dead lock 

run this :
{code:java}
public class ClassLoadDeadLock {
    public static void main(String[] args) {
        new Thread(() -> B.check(), "B").start();
        A.check();
    }

    private static class A {
        static {
            check();
        }
        public static void check() {
            B b = new B();
            sleep();
        }
    }

    private static class B {
        static {
            check();
        }
        public static void check() {
            sleep();
            A a = new A();
        }
    }

    private static void sleep() {
        try {
            TimeUnit.SECONDS.sleep(2);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
} {code}
 

> is there a dead lock in loading the SOAP Service Concurrently
> -------------------------------------------------------------
>
>                 Key: XMLBEANS-616
>                 URL: https://issues.apache.org/jira/browse/XMLBEANS-616
>             Project: XMLBeans
>          Issue Type: Bug
>            Reporter: yanglinfu
>            Priority: Major
>         Attachments: 007337a1-7e50-40bc-ac1f-d2ebd469f095.png, 1.7z, 
> 2a6c2727-50e1-4ccc-a2f5-33abd746117a.png, 
> 40f87ce3-cbcd-495e-9ce7-0ae861a3bdb7.png, 
> b3d30bc4-a060-419a-b990-503b188fe262.png, image-2022-07-14-09-54-42-466.png, 
> image-2022-07-14-09-55-15-029.png, image-2022-07-14-14-04-52-429.png
>
>
> *i have 10 threads to loading the SOAP Service Concurrently,and i find a dead 
> lock in xmlBeans's some  class loading process.*
> Thread1 info:
> "pool-13-thread-9" #120 prio=5 os_prio=0 tid=0x00002ae578872800 nid=0x19b4 in 
> Object.wait() [0x00002ae5c1814000]
>    java.lang.Thread.State: RUNNABLE
>     at org.apache.xmlbeans.XmlBeans.getNoType(XmlBeans.java:504)
>     at org.apache.xmlbeans.XmlBeans.<clinit>(XmlBeans.java:517)
>     at 
> org.apache.xmlbeans.impl.schema.XmlObjectFactory.<init>(XmlObjectFactory.java:41)
>     at org.apache.xmlbeans.XmlObject.<clinit>(XmlObject.java:128)
>     at sun.misc.Unsafe.ensureClassInitialized(Native Method)
>     at 
> sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:43)
>     at 
> sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:156)
>     at java.lang.reflect.Field.acquireFieldAccessor(Field.java:1088)
>     at java.lang.reflect.Field.getFieldAccessor(Field.java:1069)
>     at java.lang.reflect.Field.get(Field.java:393)
>  
> Thread2 info :
> "pool-13-thread-1" #112 prio=5 os_prio=0 tid=0x00002ae578861800 nid=0x19ab in 
> Object.wait() [0x00002ae5c100c000]
>    java.lang.Thread.State: RUNNABLE
>     at 
> org.apache.xmlbeans.impl.schema.SchemaTypeLoaderBase.<clinit>(SchemaTypeLoaderBase.java:38)
>     at 
> com.***.***.service.QueryRecommendOfferingsReqMsgDocument.<clinit>(QueryRecommendOfferingsReqMsgDocument.java:23)
>     at sun.misc.Unsafe.ensureClassInitialized(Native Method)
>     at 
> sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:43)
>     at 
> sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:156)
>     at java.lang.reflect.Field.acquireFieldAccessor(Field.java:1088)
>     at java.lang.reflect.Field.getFieldAccessor(Field.java:1069)
>     at java.lang.reflect.Field.get(Field.java:393)
>  
> *xmlBeans code analyze*
> 1.the object XmlBeans init is waiting for BuiltinSchemaTypeSystem  inited
> !007337a1-7e50-40bc-ac1f-d2ebd469f095.png!
> 2. BuiltinSchemaTypeSystem  is the sub class of SchemaTypeLoaderBase ,so  
> BuiltinSchemaTypeSystem is inited after SchemaTypeLoaderBase ;
> !b3d30bc4-a060-419a-b990-503b188fe262.png!
> 3. SchemaTypeLoaderBase init is need XmlBeans init in line 38;
>  
> !2a6c2727-50e1-4ccc-a2f5-33abd746117a.png!
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org

Reply via email to