1) Jemalloc本身也才是Android5.0开始引入安卓,mp自带的j emalloc-sys会导致一个应用里存在两个jemalloc,最终表现为在不同的版本上有着各种各样的异常崩溃, 问题排查成了阻碍。
2).ARM.extab是glibc提供的malloc函数入口别名,但在Android平台没有对应这类实现。因此,我们采用最原始的dlsym 方法获取内存相关函数入口, 再将其封装成Rust Allocator. 应用的内存请求也使用这些函数地址。如下图, 最终所有内存请求都传给libc, 这样Rust的业务代码对libc来说是透明的。
以上内容摘自《高德技术2020年刊合集》电子书,点击https://developer.aliyun.com/topic/download?id=1135可下载完成版
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。