Android 中的 libprocessgroup 如何工作?

sg1*_*993 5 android android-source activity-manager

假设一个应用程序进程由 zygote 启动,PID 为 1234。当应用程序启动时,PID:1234 分叉另一个进程,例如 PID:1300。当我退出应用程序时,PID:1234 被信号 9 (SIGKILL )。PID: 1300 随后成为孤儿进程并被 init 进程 (PID: 1) 采用。很快,libprocessgroup 也会触发并杀死 PID:1300(作为 PID:1234 的进程组的一部分)。这是如何触发的?换句话说,libprocessgroup 何时突然介入以清理剩余进程?