首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何解释pstack日志?

如何解释pstack日志?
EN

Stack Overflow用户
提问于 2011-05-26 08:37:52
回答 1查看 3.2K关注 0票数 1

我们有一个生产java进程,今天死机了。我们做了一些系统检查,比如磁盘空间检查,内存争用等。我们猜到进程死锁了,所以在跳过进程之前,我们在pid上运行了pstack命令。我无法从输出中解释太多。如何阅读这些日志?我在谷歌上搜索了pstack和相关帮助,但没有获得太多信息。

这是堆栈跟踪的顶部。看起来我们是在等待一个条件?从JNI线程调用DestroyVM是危险的吗?

代码语言:javascript
复制
Thread 87 (Thread 0x406a3940 (LWP 18762)):

#0  0x000000325d60a899 in pthread_cond_wait@@GLIBC_2.3.2 ()  
#1  0x00002b6f8fd9177e in os::PlatformEvent::park ()  
#2  0x00002b6f8fd67595 in Monitor::IWait ()  
#3  0x00002b6f8fd67bfd in Monitor::wait ()  
#4  0x00002b6f8fea0295 in Threads::destroy_vm ()  
#5  0x00002b6f8fba6eab in jni_DestroyJavaVM ()  
#6  0x000000004000223f in JavaMain ()  
#7  0x000000325d606367 in start_thread () from /lib64/libpthread.so.0  
#8  0x000000325cad30ad in clone () from /lib64/libc.so.6  

如有任何建议或帮助,我们将非常感谢。谢谢!

EN

回答 1

Stack Overflow用户

发布于 2011-09-24 02:30:51

您在这里看到的堆栈来自jvm本身,而不是您的java进程。别忘了Java是一种虚拟器,程序的字节码指令是由JVM解释和执行的,它只不过是一个C(当然是C++)程序。

所以我猜你没有多少信息可以从这个堆栈中提取出来,你应该已经连接了一个java调试器(jdb ?)到您的JVM,如果允许的话,以获得有意义的回溯。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6132559

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档