[anon:libc_malloc]在android中是什么意思

问题描述

我正在Android-Q中运行单元测试,作为一部分测试,我进行了 malloc_iterate 测试。源代码来自这里https://android.googlesource.com/platform/bionic/+/refs/heads/master/tests/malloc_iterate_test.cpp我不了解的一件事是,在 VerifyPointers()中,它期望 [anon:libc_malloc] > / proc / self / maps文件 [anon:libc_malloc] 是什么意思,为什么它会从该 maps 文件中获得期望?

解决方法

根据official Android documentation[anon:libc_malloc]是Android上的本机堆。

详细来说,Android应用程序开发人员不应使用它,而应使用ART或Dalvik VM内存分配器,后者将内存分配给Java / Kotlin程序。这就是为什么这些语言受内存管理的原因,这就是Java垃圾收集器可以跟踪内存的方式。