2

所以在 Android 上既没有 POSIX 共享内存也没有 SysV 共享内存,但是有ashmem. 我想用它从本地子系统的崩溃中收集一些事后信息(就像在这里)。问题 - 当持有它们的句柄的进程死亡时,我可以让一个 ashmem 区域持续存在吗?ashmem 记录在哪里?

4

1 回答 1

1

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

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

于 2012-10-12T21:26:21.030 回答