我正在开发一个java项目(本质上是算法),在运行几个问题对象之后通过CSV文件运行这个项目,它突破了以下错误。
对象0x7ffb84747ac8的java(7606,0x70000fc31000)malloc: 错误:未分配被释放的指针 在malloc_error_break中设置断点以进行调试
OS- Mac
试过java版1.7和1.8,
内存-Xms4G -Xmx4G
答案 0 :(得分:4)
您始终可以按照错误消息尝试在gdb中重现错误。通过这种方式,您可以确定问题的根源。如果您有JVM的崩溃日志,核心文件,这也可以帮助您调查问题的根源。
看看这里:
JNI debugging – extreme way, or what your iPad mini and ssh sessions can do for you
您要做的是在调试模式下启动代码,运行gdb,附加到JVM并按错误消息中的描述设置断点。
然后,一旦遇到断点,您可以查看JVM中的回溯并查看Java代码中出现问题的位置。对我来说,它似乎与JVM安装相关的问题或本机代码问题。
您还可以在这里看一下,看看如何使用IntelliJ调试混合Java / C代码(在您的情况下,您将调试整个JVM):