如何清理僵尸进程

时间:2018-06-27 09:15:01

标签: android linux kill

执行以下操作:

root@m0032dvr:/ # ps | grep native
root      4064  3956  80160  8012  futex_wait b6d795ec S nativecamera
root@m0032dvr:/ # kill 4064
root@m0032dvr:/ # ps | grep native                                             
root      4064  3956  0      0        do_exit 00000000 Z nativecamera

再次杀死:

root@m0032dvr:/ # kill 4064                                                    
root@m0032dvr:/ # ps | grep native                                             
root      4064  3956  0      0        do_exit 00000000 Z nativecamera

杀死小精灵:

root@m0032dvr:/ # kill 3956                                                    
root@m0032dvr:/ # ps | grep native                                             
root      4064  3956  0      0        do_exit 00000000 Z nativecamera

因此,杀死可以释放 nativecamera 的资源,但将其更改为僵尸,无法完全清除。

杀死-9 [pid],不起作用。

root@m0032dvr:/ # kill -9 2711                                                 
root@m0032dvr:/ # ps | grep -i native                                          
root      2711  2261  0      0        do_exit 00000000 Z nativecamera

1 个答案:

答案 0 :(得分:0)

尝试阅读manual for kill。您可以发送不同的信号,默认情况下kill将发送SIGTERM,该信号通知该进程执行其关闭例程并退出,但是僵尸进程将无法执行该操作。您应该使用kill -9 [pid]将SIGKILL发送给僵尸,这样OS才不会等待进程退出,而是会突然终止而不会给进程做任何事情的机会。