1

我的应用程序不时崩溃,我在文件夹中获得 hs_err_pid 文件,而我的 apache 日志中没有其他行。

这是文件的开头

An unexpected error has been detected by Java Runtime Environment:

java.lang.OutOfMemoryError: requested 512000 bytes for GrET in C:\BUILD_AREA\jdk6_13\hotspot\src\share\vm\utilities\growableArray.cpp. Out of swap space?

Internal Error (allocation.inline.hpp:42), pid=3252, tid=4000
Error: GrET in C:\BUILD_AREA\jdk6_13\hotspot\src\share\vm\utilities\growableArray.cpp

Java VM: Java HotSpot(TM) Client VM (11.3-b02 mixed mode windows-x86)
If you would like to submit a bug report, please visit:
 http://java.sun.com/webapps/bugreport/crash.jsp


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

Current thread (0x44be5000):  VMThread [stack: 0x44c70000,0x44cc0000] [id=4000]

Stack: [0x44c70000,0x44cc0000]
[error occurred during error reporting (printing stack bounds), id 0x80000001]

VM_Operation (0x520bf2f0): GenCollectForAllocation, mode: safepoint, requested by thread 0x45d67c00


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

最后有

 Other Threads:
 =>0x44be5000 VMThread [stack: 0x44c70000,0x44cc0000] [id=4000]
 0x44c19000 WatcherThread [stack: 0x44ea0000,0x44ef0000] [id=4028]

 VM state:at safepoint (normal execution)

 VM Mutex/Monitor currently owned by a thread:  ([mutex/lock_event])
 [0x003c8020] UNKNOWN - owner thread: 0x44be5000
 [0x003c8480] UNKNOWN - owner thread: 0x45d67c00

 Heap
def new generation   total 24256K, used 1365K [0x02b60000, 0x045b0000, 0x06670000)
eden space 21568K,   0% used [0x02b60000, 0x02b60000, 0x04070000)
from space 2688K,  50% used [0x04070000, 0x041c54d0, 0x04310000)
to   space 2688K,   0% used [0x04310000, 0x04310000, 0x045b0000)
tenured generation   total 242368K, used 242261K [0x06670000, 0x15320000, 0x32b60000)
the space 242368K,  99% used [0x06670000, 0x153056f8, 0x15305800, 0x15320000)
compacting perm gen  total 39936K, used 39723K [0x32b60000, 0x35260000, 0x42b60000)
the space 39936K,  99% used [0x32b60000, 0x3522add8, 0x3522ae00, 0x35260000)
No shared spaces configured.

Dynamic libraries:
0x00400000 - 0x00434000     C:\myFolder\myApp_20120723_03_Dollar2InterestFixV18.exe
0x7c900000 - 0x7c9b0000     C:\WINDOWS\system32\ntdll.dll
0x7c800000 - 0x7c8f4000     C:\WINDOWS\system32\kernel32.dll
0x77dd0000 - 0x77e6b000     C:\WINDOWS\system32\ADVAPI32.DLL
0x77e70000 - 0x77f01000     C:\WINDOWS\system32\RPCRT4.dll
0x773d0000 - 0x774d2000     C:\WINDOWS\WinSxS\X86_Microsoft.Windows.Common-    
Controls_6595b64144ccf1df_6.0.2600.2180_x-ww_a84f1ff9\COMCTL32.DLL
0x77c10000 - 0x77c68000     C:\WINDOWS\system32\msvcrt.dll

我注意到“交换空间不足?” 线。还有其他线索吗?感谢您提供有关如何阅读此文件的任何帮助。

4

1 回答 1

1

GrowableArray 用于垃圾收集器。您可能试图在 32 位进程中分配太多内存?在这种情况下,您可以减少内存使用量(减少 heapSize vm 参数)并且 VM 不应再崩溃 - 但如果堆空间用完,您可能会收到正确的 OutOfMemory 错误。

此错误报告提供了一个很好的概述:http ://bugs.sun.com/view_bug.do;jsessionid=2e9a93e1a4426a7101624de9e89f5?bug_id=6711183

于 2012-07-26T15:26:06.907 回答