当碰到 ActivityTaskManager: START u0 {flg=0x10000000 cmp=com.test/com.test.activity.TestActivity} from uid 1000 pid -1
发现pid等于-1,由于是taskview启动,所以需要进一步查找pid信息
Line 130094: 09-08 11:47:36.379 1247 3323 E ActivityTaskManager: Starting window is not removed, kill it : com.zeekr.carlauncher3d
Line 130740: 09-08 11:47:36.503 1247 3323 I ActivityManager: Killing 3253:com.test/1000 (adj 0): stop com.test due to from pid 1247
Line 130741: 09-08 11:47:36.503 1247 3323 I am_kill : [0,3253,com.test,0,stop com.test due to from pid 1247]
很显然是system_server进程杀死的
不排除人为(使用adb force-stop),adb 执行命令时 的 pid 是0 或者null,所以这里排除adb命令,是系统层调用干掉的
当user% + sys%
持续超过80%时,系统进入高负载状态
若irq% + sirq%
超过30%,表明硬件中断频繁,可能触发系统保护机制
进程被杀后内存立马恢复
如果pid是其它进程,就需要排查该进程原因,是否自己异常导致的把其它进程也给同时结束了
比如自己进程crash了,可以看到pid就是自己杀死的