Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java线程挂起在本机方法中_Java_Jvm_Threadpool_Freeze_Thread Dump - Fatal编程技术网

Java线程挂起在本机方法中

Java线程挂起在本机方法中,java,jvm,threadpool,freeze,thread-dump,Java,Jvm,Threadpool,Freeze,Thread Dump,解析日期字符串时,线程挂起在本机方法中。该线程在过去18小时内以相同的状态停止(不同时间的thread dumb显示相同的线程,并显示相关线程的相同堆栈) 请说明可能的错误 "DateParsingThread - 001" #228 daemon prio=5 os_prio=0 tid=0x00007f98e0029000 nid=0x9c2 runnable [0x00007f98016ee000] java.lang.Thread.State: RUNNABLE at ja

解析日期字符串时,线程挂起在本机方法中。该线程在过去18小时内以相同的状态停止(不同时间的thread dumb显示相同的线程,并显示相关线程的相同堆栈)

请说明可能的错误

"DateParsingThread - 001" #228 daemon prio=5 os_prio=0 tid=0x00007f98e0029000 nid=0x9c2 runnable [0x00007f98016ee000]
   java.lang.Thread.State: RUNNABLE
    at java.security.AccessController.doPrivileged(Native Method)
    at sun.util.resources.LocaleData.getBundle(LocaleData.java:163)
    at sun.util.resources.LocaleData.getDateFormatData(LocaleData.java:127)
    at sun.util.locale.provider.LocaleResources.getCalendarNames(LocaleResources.java:325)
    at sun.util.locale.provider.CalendarNameProviderImpl.getDisplayNamesImpl(CalendarNameProviderImpl.java:157)
    at sun.util.locale.provider.CalendarNameProviderImpl.getDisplayNames(CalendarNameProviderImpl.java:139)
    at sun.util.locale.provider.CalendarDataUtility$CalendarFieldValueNamesMapGetter.getObject(CalendarDataUtility.java:178)
    at sun.util.locale.provider.CalendarDataUtility$CalendarFieldValueNamesMapGetter.getObject(CalendarDataUtility.java:154)
    at sun.util.locale.provider.LocaleServiceProviderPool.getLocalizedObjectImpl(LocaleServiceProviderPool.java:281)
    at sun.util.locale.provider.LocaleServiceProviderPool.getLocalizedObject(LocaleServiceProviderPool.java:265)
    at sun.util.locale.provider.CalendarDataUtility.retrieveFieldValueNames(CalendarDataUtility.java:88)
    at java.util.Calendar.getDisplayNames(Calendar.java:2178)
    at java.text.SimpleDateFormat.getDisplayNamesMap(SimpleDateFormat.java:2366)
    at java.text.SimpleDateFormat.subParse(SimpleDateFormat.java:1972)
    at java.text.SimpleDateFormat.parse(SimpleDateFormat.java
    at java.text.DateFormat.parse(DateFormat.java:364)

欢迎提供任何找到解决方案的建议。

可能是您的捆绑包阻塞了线程(您可以调试
java.util.ResourceBundle.getBundleImpl
方法,并查看哪些资源阻塞了de进程)。这可能会导致JVM级死锁。尝试
jstack-m
获取堆栈的本机部分。谢谢@apangin将检查“本机方法”部分在哪里?(您是如何发现它在本机方法中被阻塞的?)在java.security.AccessController.doPrivileged(本机方法)中,从这个@jurajMartinKa可以看出,您的包正在阻塞线程(您可以调试
java.util.ResourceBundle.getBundleImpl
方法,并观察哪些资源正在阻塞反进程)。这可能会导致JVM级死锁。尝试
jstack-m
获取堆栈的本机部分。谢谢@apangin将检查“本机方法”部分在哪里?(您是如何发现它在本机方法中被阻止的?)