我遇到以下问题:不使用 JNI 的 Java 应用程序在垃圾收集期间经常崩溃:
A fatal error has been detected by the Java Runtime Environment:
EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000000000000, pid=3032, tid=0x0000000000000500
JRE version: Java(TM) SE Runtime Environment (8.0_211-b12) (build 1.8.0_211-b12)
Java VM: Java HotSpot(TM) 64-Bit Server VM (25.211-b12 mixed mode windows-amd64 compressed oops)
Problematic frame:
C 0x0000000000000000
--------------- T H R E A D ---------------
Current thread (0x000000000323f000): GCTaskThread [stack: 0x0000000017af0000,0x0000000017bf0000] [id=1280]
我不会重写 Finalize 方法。
什么可能导致此类崩溃? 如果 gc 在验证对象指针期间崩溃,也许我们可以看到 gc 在崩溃之前收集了什么?
我尝试了很多版本的jdk8,错误到处都一样。
最佳答案
我敢打赌,你的内存不足了。
关于Java 在垃圾回收期间崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57560898/