android - 检测android native 代码中的内存泄漏

标签 android memory-management memory-leaks android-ndk

在使用 android NDK 构建的 native 代码中检测内存泄漏的最佳方法是什么?

有没有我可以使用的类似 valgrind 的工具?

最佳答案

您使用 System.loadLibrary 加载 *.so 库,然后调用任何 jni 函数。所以你可以定义“启动”和“清理”功能 - 你可以在前一个函数中进行初始化并在后者中释放所有资源。在这种情况下,可以使用大量可用泄漏示踪剂中的任何一种 - 例如,您可以看到以下内容:

http://dmalloc.com/

http://www.andreasen.org/LeakTracer/

http://memwatch.sourceforge.net/

http://mpatrol.sourceforge.net/

关于 valgrind:https://stackoverflow.com/a/7815977/814297

关于android - 检测android native 代码中的内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5926736/

相关文章:

通过引用传递的 MATLAB 函数

iphone - iPhone内存管理问题

java - 警告 - 内存泄漏 - 静态字段中的上下文类

java - Android 时间小部件未接收更新

java - 如何使用 spongy caSTLe 为比特币曲线 (secp256k1) 创建 ECDSA key 对(256 位)?

c - C中内存中的指针布局

postgresql - Postgres 为什么交换使用量在增长?如何减少呢? -AWS RDS

c++ - 在 OpenCV 应用程序中,如何确定内存泄漏的来源并修复它?

android - 无法安装 ADT。缺少 org.eclipse.wst.xml.ui

android - 公历日期混淆