所以在Android上既没有POSIX共享内存也没有SysV共享内存,但是ashmem
。我想用它从本机子系统中的崩溃中收集一些事后信息(如here中所示)。问题 - 当持有句柄的过程死亡时,我可以使ashmem区域持续存在吗?哪个是ashmem记录的?
答案 0 :(得分:1)
看起来没有内置方法可以让区域坚持下去。所以我构建了一个进程外服务,我将一个描述符传递给它的一个区域,并希望该服务超过主进程。众所周知,Android上的后台服务没有终身保证。
该服务具有类型为ParcelFileDescriptor
的静态变量,并支持两个绑定命令 - GET和SET。它们分别在响应包中返回所述描述符,并从请求包中分配它,关闭当前保存的一个(如果有的话)。