jvm崩溃

wgd81685 2017-05-17 03:10:58
加精
我们公司开发的CS架构的swing程序,操作是windowsXP,运行环境是JRE8,目前有大概两千个左右的客户端能够正常运行,只有下面的这个运行一段时间后就会出现JVM崩溃的问题,这个“一段时间”的具体时间不定,有时是24小时,有时是10小时,有时是几分钟。
下面是JVM崩溃的日志,完全看不出任何头绪。
试过杀毒,试过重装系统,试过换电脑,问题依然出现,求大神帮忙


#
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x7c911e58, pid=3432, tid=3948
#
# JRE version: Java(TM) SE Runtime Environment (8.0_20-b26) (build 1.8.0_20-b26)
# Java VM: Java HotSpot(TM) Client VM (25.20-b23 mixed mode windows-x86 )
# Problematic frame:
# C [ntdll.dll+0x11e58]
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
# http://bugreport.sun.com/bugreport/crash.jsp
#

--------------- T H R E A D ---------------

Current thread (0x2349f000): JavaThread "C1 CompilerThread0" daemon [_thread_in_vm, id=3948, stack(0x237a0000,0x237f0000)]

siginfo: ExceptionCode=0xc0000005, reading address 0x00000000

Registers:
EAX=0x252e6dd0, EBX=0x00a60000, ECX=0x00000000, EDX=0x00000000
ESP=0x237ef90c, EBP=0x237ef918, ESI=0x252e6dc8, EDI=0x252e6f98
EIP=0x7c911e58, EFLAGS=0x00010246

Top of Stack: (sp=0x237ef90c)
0x237ef90c: 00a60000 252e6f98 00000000 237ef9ec
0x237ef91c: 7c910d5c 00000000 252e6f98 237ef9d0
0x237ef92c: 00000000 00e0ff08 252e6fa0 00a68748
0x237ef93c: 31b80000 2349f598 24c1ffa8 2352bcc8
0x237ef94c: 00000028 00000008 00000001 24c1ffb0
0x237ef95c: 237ef970 3065bd18 38306666 00000010
0x237ef96c: 3864001b 62f5269e 237ef9b4 78b07462
0x237ef97c: 237ef994 6d407b64 00000000 237efa34

Instructions: (pc=0x7c911e58)
0x7c911e38: 3d 00 fe 00 00 0f 87 ee ed ff ff 80 7d 14 00 0f
0x7c911e48: 85 97 7a 03 00 8b 4e 0c 8d 46 08 8b 10 89 4d 08
0x7c911e58: 8b 09 3b 4a 04 89 55 0c 0f 85 9d 00 00 00 3b c8
0x7c911e68: 0f 85 95 00 00 00 56 53 e8 1f ed ff ff 8b 45 0c


Register to memory mapping:

EAX=0x252e6dd0 is an unknown value
EBX=0x00a60000 is an unknown value
ECX=0x00000000 is an unknown value
EDX=0x00000000 is an unknown value
ESP=0x237ef90c is pointing into the stack for thread: 0x2349f000
EBP=0x237ef918 is pointing into the stack for thread: 0x2349f000
ESI=0x252e6dc8 is an unknown value
EDI=0x252e6f98 is an unknown value


Stack: [0x237a0000,0x237f0000], sp=0x237ef90c, free space=318k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [ntdll.dll+0x11e58]
C [ntdll.dll+0x10d5c]
C [msvcr100.dll+0x1016a]
V [jvm.dll+0x14da0e]
V [jvm.dll+0x54f85]
V [jvm.dll+0x160a2d]
V [jvm.dll+0x160f3e]
V [jvm.dll+0x1612f0]
V [jvm.dll+0x62e1a]
V [jvm.dll+0x168c5c]
V [jvm.dll+0x1694ea]
V [jvm.dll+0x1ae146]
C [msvcr100.dll+0x5c556]
C [msvcr100.dll+0x5c600]
C [kernel32.dll+0xb699]
C 0x00000000


--------------- P R O C E S S ---------------

Java Threads: ( => current thread )
0x252e5c00 JavaThread "pool-1-thread-52" [_thread_blocked, id=1504, stack(0x31a80000,0x31b00000)]
0x23bc1400 JavaThread "pool-1-thread-51" [_thread_blocked, id=3812, stack(0x31a00000,0x31a80000)]
0x252ca400 JavaThread "pool-1-thread-50" [_thread_blocked, id=2236, stack(0x25740000,0x257c0000)]
0x24bcf800 JavaThread "pool-1-thread-49" [_thread_blocked, id=3468, stack(0x24230000,0x242b0000)]
0x252e2c00 JavaThread "AcmVerifyThread" [_thread_blocked, id=3128, stack(0x31880000,0x31900000)]
0x252e1400 JavaThread "AcmParseThread" [_thread_blocked, id=2764, stack(0x31800000,0x31880000)]
0x252df000 JavaThread "AcmSendThread" [_thread_blocked, id=2608, stack(0x31780000,0x31800000)]
0x252dd800 JavaThread "AvcParseThread" [_thread_blocked, id=1084, stack(0x31700000,0x31780000)]
0x252dc000 JavaThread "AvcSendThread" [_thread_blocked, id=2992, stack(0x31680000,0x31700000)]
0x252cf800 JavaThread "pool-1-thread-47" [_thread_blocked, id=2600, stack(0x31580000,0x31600000)]
0x252cdc00 JavaThread "pool-1-thread-46" [_thread_blocked, id=280, stack(0x31500000,0x31580000)]
0x252cc800 JavaThread "pool-1-thread-45" [_thread_blocked, id=3352, stack(0x31480000,0x31500000)]
0x252cb800 JavaThread "pool-1-thread-44" [_thread_blocked, id=1928, stack(0x31400000,0x31480000)]
0x2528e400 JavaThread "pool-1-thread-43" [_thread_blocked, id=1740, stack(0x31380000,0x31400000)]
0x252a9400 JavaThread "pool-1-thread-42" [_thread_blocked, id=1624, stack(0x31300000,0x31380000)]
0x25292800 JavaThread "DefaultQuartzScheduler_QuartzSchedulerThread" [_thread_blocked, id=3324, stack(0x31280000,0x31300000)]
0x25281c00 JavaThread "DefaultQuartzScheduler_Worker-10" [_thread_blocked, id=2776, stack(0x31200000,0x31280000)]
0x25280400 JavaThread "DefaultQuartzScheduler_Worker-9" [_thread_blocked, id=4092, stack(0x31180000,0x31200000)]
0x2527b400 JavaThread "DefaultQuartzScheduler_Worker-8" [_thread_blocked, id=1604, stack(0x31100000,0x31180000)]
0x2527a000 JavaThread "DefaultQuartzScheduler_Worker-7" [_thread_blocked, id=2268, stack(0x31080000,0x31100000)]
0x25278800 JavaThread "DefaultQuartzScheduler_Worker-6" [_thread_blocked, id=2224, stack(0x31000000,0x31080000)]
0x2526f800 JavaThread "DefaultQuartzScheduler_Worker-5" [_thread_blocked, id=3200, stack(0x30f80000,0x31000000)]
0x2526e000 JavaThread "DefaultQuartzScheduler_Worker-4" [_thread_blocked, id=3992, stack(0x30f00000,0x30f80000)]
0x25289400 JavaThread "DefaultQuartzScheduler_Worker-3" [_thread_blocked, id=240, stack(0x30e80000,0x30f00000)]
0x25288800 JavaThread "DefaultQuartzScheduler_Worker-2" [_thread_blocked, id=3500, stack(0x30e00000,0x30e80000)]
0x25286c00 JavaThread "DefaultQuartzScheduler_Worker-1" [_thread_blocked, id=2252, stack(0x30d80000,0x30e00000)]
0x25253800 JavaThread "Thread-8" [_thread_blocked, id=1032, stack(0x30c00000,0x30c80000)]
0x25245400 JavaThread "Win32SerialPort Notification thread" [_thread_in_native, id=1552, stack(0x30b80000,0x30c00000)]
0x2523ec00 JavaThread "pool-1-thread-41" [_thread_blocked, id=3536, stack(0x30b00000,0x30b80000)]
0x2523c400 JavaThread "pool-1-thread-40" [_thread_blocked, id=932, stack(0x30a80000,0x30b00000)]
0x25242800 JavaThread "pool-1-thread-39" [_thread_blocked, id=2360, stack(0x30a00000,0x30a80000)]
0x2523b000 JavaThread "pool-1-thread-38" [_thread_in_native, id=3204, stack(0x30980000,0x30a00000)]
0x25237c00 JavaThread "Thread-7" [_thread_blocked, id=1800, stack(0x30900000,0x30980000)]
0x25236c00 JavaThread "Win32SerialPort Notification thread" [_thread_in_native, id=3516, stack(0x30880000,0x30900000)]
0x25236000 JavaThread "pool-1-thread-37" [_thread_blocked, id=2452, stack(0x30800000,0x30880000)]
0x25212400 JavaThread "pool-1-thread-36" [_thread_blocked, id=4064, stack(0x30780000,0x30800000)]
0x25227c00 JavaThread "pool-1-thread-35" [_thread_in_native, id=2684, stack(0x30700000,0x30780000)]
0x251e9400 JavaThread "pool-1-thread-34" [_thread_blocked, id=784, stack(0x30680000,0x30700000)]
0x23aae800 JavaThread "pool-1-thread-33" [_thread_blocked, id=1764, stack(0x30600000,0x30680000)]
0x251ea800 JavaThread "pool-1-thread-32" [_thread_blocked, id=2528, stack(0x30580000,0x30600000)]
0x25133000 JavaThread "pool-1-thread-31" [_thread_blocked, id=2120, stack(0x30500000,0x30580000)]
0x251dd800 JavaThread "pool-1-thread-30" [_thread_in_vm, id=3964, stack(0x30480000,0x30500000)]
0x251dc000 JavaThread "pool-1-thread-29" [_thread_blocked, id=3340, stack(0x30400000,0x30480000)]
0x23aab800 JavaThread "pool-1-thread-28" [_thread_blocked, id=2140, stack(0x30380000,0x30400000)]
0x23aa7c00 JavaThread "pool-1-thread-27" [_thread_blocked, id=3816, stack(0x30300000,0x30380000)]
0x250bcc00 JavaThread "hartBitThread" [_thread_blocked, id=1864, stack(0x26650000,0x266d0000)]
0x24dc9800 JavaThread "Thread-5" [_thread_blocked, id=3364, stack(0x26490000,0x26510000)]
0x24db8000 JavaThread "pool-1-thread-26" [_thread_blocked, id=3064, stack(0x26410000,0x26490000)]
0x24da9800 JavaThread "pool-1-thread-25" [_thread_blocked, id=3480, stack(0x26390000,0x26410000)]
0x24d91400 JavaThread "pool-1-thread-24" [_thread_blocked, id=3004, stack(0x26310000,0x26390000)]
0x24d8b400 JavaThread "pool-1-thread-23" [_thread_blocked, id=3260, stack(0x26290000,0x26310000)]
0x24d89c00 JavaThread "Win32SerialPort Notification thread" [_thread_in_native, id=2320, stack(0x26200000,0x26280000)]
0x24d8ec00 JavaThread "pool-1-thread-22" [_thread_blocked, id=376, stack(0x26180000,0x26200000)]
0x24d86000 JavaThread "pool-1-thread-21" [_thread_blocked, id=3520, stack(0x260c0000,0x26140000)]
0x24d83800 JavaThread "pool-1-thread-20" [_thread_blocked, id=1768, stack(0x26040000,0x260c0000)]
0x24d82800 JavaThread "pool-1-thread-19" [_thread_blocked, id=2932, stack(0x25fc0000,0x26040000)]
0x24d80400 JavaThread "Win32SerialPort Notification thread" [_thread_in_native, id=3608, stack(0x25f30000,0x25fb0000)]
0x24d7d000 JavaThread "pool-1-thread-18" [_thread_blocked, id=3580, stack(0x25eb0000,0x25f30000)]
0x24d78000 JavaThread "pool-1-thread-17" [_thread_blocked, id=2244, stack(0x25e30000,0x25eb0000)]
0x24d76400 JavaThread "pool-1-thread-16" [_thread_blocked, id=2860, stack(0x25db0000,0x25e30000)]
0x24d75000 JavaThread "pool-1-thread-15" [_thread_blocked, id=604, stack(0x25d30000,0x25db0000)]
0x24d74400 JavaThread "Win32SerialPort Notification thread" [_thread_in_vm, id=284, stack(0x25ca0000,0x25d20000)]
0x24d59400 JavaThread "Win32SerialPort Notification thread" [_thread_in_native, id=2072, stack(0x25c10000,0x25c90000)]
0x24d62800 JavaThread "pool-1-thread-14" [_thread_blocked, id=680, stack(0x25b90000,0x25c10000)]
0x24d73000 JavaThread "pool-1-thread-13" [_thread_blocked, id=2572, stack(0x25b10000,0x25b90000)]
0x24d61400 JavaThread "Win32SerialPort Notification thread" [_thread_in_native, id=2348, stack(0x25a80000,0x25b00000)]
0x24d5c400 JavaThread "pool-1-thread-11" [_thread_blocked, id=2336, stack(0x25940000,0x259c0000)]
0x24d5d000 JavaThread "pool-1-thread-12" [_thread_blocked, id=2520, stack(0x257c0000,0x25840000)]







...全文
4022 39 打赏 收藏 转发到动态 举报
写回复
用AI写文章
39 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhujinqiang 2017-06-02
  • 打赏
  • 举报
回复
引用 34 楼 injuer 的回复:
1.cg回收过慢。 2.新生成的资源大于未回收的资源,代码逻辑有问题。 3.线程数量与cpu核数处理信息速度不合理。 4.jvm在申请新空间时被os拒绝。 已告诉你问题点,解决方式需贴主自行思考。
timeguys 2017-05-31
  • 打赏
  • 举报
回复
业余草 2017-05-29
  • 打赏
  • 举报
回复

http://www.xttblog.com/?p=1188
详解使用 jstack 跟踪 java 异常代码
Malzahar_ 2017-05-27
  • 打赏
  • 举报
回复
我老公出差了 2017-05-24
  • 打赏
  • 举报
回复
eden 100%, 看看代码哪里创建对象不合理。
injuer 2017-05-21
  • 打赏
  • 举报
回复
1.cg回收过慢。 2.新生成的资源大于未回收的资源,代码逻辑有问题。 3.线程数量与cpu核数处理信息速度不合理。 4.jvm在申请新空间时被os拒绝。 已告诉你问题点,解决方式需贴主自行思考。
zuiaixu 2017-05-19
  • 打赏
  • 举报
回复
看看问题,好像遇到过
F~~Y 2017-05-19
  • 打赏
  • 举报
回复
看看,没整过
zsjpower 2017-05-19
  • 打赏
  • 举报
回复
日志里面说ntdll.dll有问题,试试看修复下该dll文件试试看。
很叼么 2017-05-18
  • 打赏
  • 举报
回复
对于这多大点的系统,java虚拟机的默认配置根本不满足业务需求,需要加大参数,默认配置是小轿车只能拉5个乘客,现实使用中,你拉了几百个乘客,当然扛不住了
很叼么 2017-05-18
  • 打赏
  • 举报
回复
那么多线程一个线程占用1M内存,Gc回收不过来,可能是线程增多时才会有这种情况,把内存调大试试!-Xmx1024m
足球中国 2017-05-18
  • 打赏
  • 举报
回复
你的带宽只有10M,非要接收11M的东西。你的CPU只有2G。非要3G的计算,你的内存只有8G。却要存10G的东东。你的硬盘速度只有400M/s却要读写500M。肯定会有问题。
逗泥丸的平方 2017-05-18
  • 打赏
  • 举报
回复
不过按照你的描述 是只在XP的机器上会挂掉?这些机器的配置怎么样. 能不能满足你的内存需求.. 再就是有没有用到堆外内存的情况
逗泥丸的平方 2017-05-18
  • 打赏
  • 举报
回复
另外可以考虑 jconsole 监控一下内存使用量, 以及jmap查看一下引用.
逗泥丸的平方 2017-05-18
  • 打赏
  • 举报
回复
引用 19 楼 wgd81685 的回复:
[quote=引用 16 楼 qq_35209952 的回复:] [quote=引用 14 楼 wgd81685 的回复:] [quote=引用 11 楼 qq_35209952 的回复:] 你日志有点乱了.. 能不能分开搞呀.. 很多Windows相关的东西看了也白看. GC Heap History (10 events): 这一段查看内存情况的东西 是你们自己加的 还是框架提供的 还是说手动输出的 ?
这个日志文件是jvm崩溃的时候自动生成的hs_err_pid3432.log,我原样贴了上来。 GC Heap History这一段也没有做改动,是日志文件里的原话[/quote] 所以我说你们自己的系统日志在哪里... 系统日志里面有直接原因 ,先看看JVM最后抛出来的异常是什么 看GC日志是来分析内存的 这是第二步的事情, 像是这里写空指针 Exception <a 'java/lang/NullPointerException' 但是这样的日志是没有意义的,你也不可能去查DLL的接口... [/quote] 系统日志是指我们软件自身记录的日志么?如果看软件自身记录的日志的话,没有任何的错误信息,感觉就是软件突然退出了。[/quote] 是的. 突然退出? 那有没有记录退出时 在做什么,每次的时机是不是一致的.
wgd81685 2017-05-18
  • 打赏
  • 举报
回复
引用 16 楼 qq_35209952 的回复:
[quote=引用 14 楼 wgd81685 的回复:] [quote=引用 11 楼 qq_35209952 的回复:] 你日志有点乱了.. 能不能分开搞呀.. 很多Windows相关的东西看了也白看. GC Heap History (10 events): 这一段查看内存情况的东西 是你们自己加的 还是框架提供的 还是说手动输出的 ?
这个日志文件是jvm崩溃的时候自动生成的hs_err_pid3432.log,我原样贴了上来。 GC Heap History这一段也没有做改动,是日志文件里的原话[/quote] 所以我说你们自己的系统日志在哪里... 系统日志里面有直接原因 ,先看看JVM最后抛出来的异常是什么 看GC日志是来分析内存的 这是第二步的事情, 像是这里写空指针 Exception <a 'java/lang/NullPointerException' 但是这样的日志是没有意义的,你也不可能去查DLL的接口... [/quote] 系统日志是指我们软件自身记录的日志么?如果看软件自身记录的日志的话,没有任何的错误信息,感觉就是软件突然退出了。
HinanaiTenshi 2017-05-18
  • 打赏
  • 举报
回复
相比jstack,为何不先试试更加直观的jstat -gcutil,相比一些奇怪的bug,先保证内存没有被打满吧.....
glutton 2017-05-18
  • 打赏
  • 举报
回复
是jni的错吧,你的程序,有没有调第三方dll?程序里显示调用的
ljheee 2017-05-18
  • 打赏
  • 举报
回复
看起来 很六啊
hugh_z 2017-05-18
  • 打赏
  • 举报
回复
8888888888888888888
加载更多回复(18)

62,614

社区成员

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

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