当前位置:  开发笔记 > 编程语言 > 正文

多线程卡在本机调用中(Java)

如何解决《多线程卡在本机调用中(Java)》经验,为你挑选了0个好方法。

我在使用JDK 1.5.0_08在Fedora Core 6上运行的应用程序时遇到问题.

经过一段时间(通常是几天)后,线程开始陷入本机方法.

线程被锁定在这样的东西:

"pool-2-thread-2571" prio=1 tid=0x08dd0b28 nid=0x319e waiting for monitor entry [0xb91fe000..0xb91ff7d4]
at java.lang.Class.getDeclaredConstructors0(Native Method)

要么

"pool-2-thread-2547" prio=1 tid=0x75641620 nid=0x1745 waiting for monitor entry [0xbc7fe000..0xbc7ff554]
at sun.misc.Unsafe.defineClass(Native Method)

特别令我困惑的是这一个:

"HealthMonitor-10" daemon prio=1 tid=0x0868d1c0 nid=0x2b72 waiting for monitor entry [0xbe5ff000..0xbe5ff4d4]
at java.lang.Thread.dumpThreads(Native Method)
at java.lang.Thread.getStackTrace(Thread.java:1383)

线程保持卡住状态,直到VM重新启动.

任何人都可以告诉我这里发生了什么,可能导致本机方法阻止的原因是什么?每个卡住线程顶部的监视器入口地址范围不同.我怎么能弄清楚拿着这台显示器的是什么?

任何建议或意见将不胜感激!

谢谢,大卫

推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有