3

我有一个共享库,Java 平台将通过 JNI 调用它。是否可以使用 Valgrnid 检查 solib 中的内存泄漏?

我试过了

valgrind java -cp bin:libs/junit/junit.jar org.junit.runner.JUnitCore com.test.app

==7902== Memcheck, a memory error detector
==7902== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
==7902== Using Valgrind-3.8.0 and LibVEX; rerun with -h for copyright info
==7902== Command: java -cp bin:libs/junit/junit.jar org.junit.runner.JUnitCore com.test.FnTestNPVRRemoteBooking
==7902==
JUnit version 4.11-SNAPSHOT-20120805-1225
.
.
.
.
.
end

Valgrind 运行但不打印任何结果,可能是因为它不打算为 java 应用程序运行,但有什么解决方法?

一般来说,是否有一种解决方案可以仅在 solibs 上检查内存泄漏?

是否可以将 Valgrind 连接到 PID(Linux 平台)?(我知道 GDB 可以上钩)如果是的话,它会帮助我的场景,因为 App PID 将是一个 Java 应用程序。

PS - 我的应用程序不打算在 android 上运行,但可能是 android 开发人员知道解决方案,所以添加 android 标签。

4

0 回答 0