分段故障仅在Ubuntu 10.04 32位上,因为堆栈大小太小

时间:2017-12-12 15:23:17

标签: java c++ ubuntu segmentation-fault jna

我有一个Java应用程序,它通过JNA使用几个本机库。 该应用程序适用于许多不同的系统。但是,在关闭应用程序时,在Ubuntu 10.04 LTS-32bit上会发生分段错误。 64位工作正常,其他32位发行版上不会出现错误。 Windows工作正常。 分段错误发生在空析构函数中的glibc的删除函数中。

如果我将JVM的最大堆栈大小增加到32mb,问题就解决了 (例如java -Xss32m ...)

有没有人知道为什么这个错误只发生在Ubuntu 10.04 32bit上? 我在VM中测试了几个发行版。

我使用的是Java 8,默认的最大堆栈大小为4MB。 我不知道这是否与JVM相关,但是ulimit -s是8MB。

0 个答案:

没有答案