java进程莫名的假死,调用jmap/jstack后恢复工作

Ray。Z 2016-05-13 10:30:47
使用java做一个项目,jdk版本为1.7.0_79,现发现程序在运行一段时间后,会莫名的处于假死状态(根据日志判断,正常情况下该程序会刷日志);而当该进程处于假死状态后,调用jmap -heap pid 和 jstack -F pid 分析之后,该java进程又恢复正常工作,求大神帮忙分析一下问题原因。

这是当时执行jmap打印的信息:

[root@localhost root]# jmap -heap 32135
Attaching to process ID 32135, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 24.79-b02

using thread-local object allocation.
Parallel GC with 18 thread(s)

Heap Configuration:
MinHeapFreeRatio = 0
MaxHeapFreeRatio = 100
MaxHeapSize = 4294967296 (4096.0MB)
NewSize = 1310720 (1.25MB)
MaxNewSize = 17592186044415 MB
OldSize = 5439488 (5.1875MB)
NewRatio = 2
SurvivorRatio = 8
PermSize = 21757952 (20.75MB)
MaxPermSize = 85983232 (82.0MB)
G1HeapRegionSize = 0 (0.0MB)

Heap Usage:
PS Young Generation
Eden Space:
capacity = 354418688 (338.0MB)
used = 341848280 (326.01192474365234MB)
free = 12570408 (11.988075256347656MB)
96.45323217267821% used
From Space:
capacity = 1572864 (1.5MB)
used = 1068480 (1.01898193359375MB)
free = 504384 (0.48101806640625MB)
67.93212890625% used
To Space:
capacity = 2621440 (2.5MB)
used = 0 (0.0MB)
free = 2621440 (2.5MB)
0.0% used
PS Old Generation
capacity = 75497472 (72.0MB)
used = 58251928 (55.553367614746094MB)
free = 17245544 (16.446632385253906MB)
77.15745502048068% used
PS Perm Generation
capacity = 46661632 (44.5MB)
used = 46353704 (44.206336975097656MB)
free = 307928 (0.29366302490234375MB)
99.34008309010709% used

21330 interned Strings occupying 2260360 bytes.

...全文
1028 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
northwesternwind 2019-09-01
  • 打赏
  • 举报
回复
MaxNewSize       = 17592186044415 MB

这个太夸张了吧???
棱角角角角 2019-08-31
  • 打赏
  • 举报
回复
楼主有发现原因嘛?

62,635

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧