android - Ashmem 保留政策

标签 android linux android-ndk shared-memory ashmem

因此在 Android 上既没有 POSIX 共享内存也没有 SysV 共享内存,但是有 ashmem。我想用它从 native 子系统的崩溃中收集一些事后分析信息(比如 here )。问题 - 当持有 ashmem 区域句柄的进程死亡时,我可以让 ashmem 区域持续存在吗? ashmem 的记录在哪里?

最佳答案

看起来没有固定区域的内置方法。所以我构建了一个进程外服务,我将一个描述符传递给一个区域,并希望该服务比主进程长。众所周知,Android 上的后台服务没有终身保修。

该服务有一个类型为 ParcelFileDescriptor 的静态变量,并支持两个 Binder 命令 - GET 和 SET。它们分别在响应包中返回所述描述符,并从请求包中分配它,关闭当前持有的包(如果有的话)。

关于android - Ashmem 保留政策,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12847301/

相关文章:

linux - 生成文件名以在 shell globing 下进行正确的顺序排序

android - cygwin中的ndk-build错误

java - 使用 Facebook GRAPH API 删除 Facebook 发布的消息? (适用于安卓)

android - 我的应用程序崩溃只是因为唤醒锁 "DoNotSleep"

android - 我们可以更改应用内结算产品 Play 商店的价格吗

android - 日历备份和恢复

android - 在 Android 中运行 NodeJs 服务器

java - Android:指定时间后停止AnimationDrawable,恢复onResume(),暂停onPause()

linux - 在 Ubuntu(或任何 unix 类型的环境)中执行 shell 脚本时,如何在脚本之外持久保存导出?

c++ - 仅启用来自指定 IP 地址的传入连接