문제

Android 플랫폼에서 어떤 LIBC 구현이 사용됩니까? 어떤 malloc 구현이 사용됩니까 (ptmalloc 또는 tcmalloc 또는 기타)?

도움이 되었습니까?

해결책

LIBC입니다 바이오닉 그리고 Malloc입니다 더그 레아 버전 명명 된 dlmalloc (스레드 안전에 대해 사용 _locks가 활성화 됨).

업데이트 : DLMalloc은 2016 년 1 월에 제거되었습니다. https://github.com/android/platform_bionic/commit/c650447239352d43acc2fd99a8579a85ae0469ab https://sourceforge.net/p/android-x86/bionic/ci/0ac0ce0d1ab60a92103a5021e76ec31da2e3234/ "병합"dlmalloc 제거. "

+libc_malloc_src := bionic/jemalloc_wrapper.cpp
+libc_common_c_includes += external/jemalloc/include

따라서 Android 7은 외부 Malloc 구현 Jemalloc (FreeBsd/Facebook)을 사용합니다. http://jemalloc.net/ 그리고 https://github.com/jemalloc/jemalloc; 안드로이드 코드 변형이 있습니다. https://android.googlesource.com/platform/external/jemalloc/

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top