在hs_err_pidxxx.log文件中,“堆栈顶部”部分如下所示:
Top of Stack: (sp=0x00007f10346be930)
0x00007f10346be930: 00007f10346be990 00007f1011bb1e15
0x00007f10346be940: 00007f1011bb1b33 00007f10346be948
0x00007f10346be950: 00007f0f17aff3b0 00007f10346be9a8
0x00007f10346be960: 00007f0f17aff5a0 0000000000000000
我知道第一列是堆栈地址,我认为最后一列是函数的地址,但是第二列呢?我也想知道这些是否与机器相关...
任何信息都很好。
我在 https://docs.oracle.com/javase/9/troubleshoot/fatal-error-log.htm上找到了一些信息,但是没有解释任何细节。
请您参考如下方法:
这是堆栈存储器的转储,每行16个字节。
在64位系统上,内存内容按64位值分组:
address: <8 bytes at address> <8 bytes at address+8>
address+16: ...
在32位系统上,它按32位值分组:
address: <4 bytes at address> <at address+4> <at address+8> <at address+12>
address+16: ...
相关 session 视频: