在我的集成测试构建期间,我开始面临以下 JVM 崩溃:
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f74e1add156, pid=17603, tid=0x00007f743ff9e700
#
# JRE version: Java(TM) SE Runtime Environment (8.0_162-b12) (build 1.8.0_162-b12)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.162-b12 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C [libc.so.6+0x14e156]
我将 JNA 包装器用于 OpenCV 和 Leptonica 库。
这可能是什么原因以及如何解决?
更新
这是hs_err_pid18951.log
- https://files.fm/u/s9vnpw3d
我还怀疑(但现在不确定)这个问题与以下代码块内 OpenCV/Leptonica 逻辑的并行执行有关:
Arrays.stream(fileList).parallel().forEach(f -> {
// OpenCV/Leptonica logic
}
这是否有意义,如果有,如何解决?