杀戮功能同步吗?

Met*_*est 19 c linux x86 gcc

killLinux中的函数是否同步?比方说,我以编程方式调用kill函数来终止进程,它只会在预期进程终止时返回,或者只是发送信号并返回.如果是这种情况,我怎样才能让它等待杀死目标进程?

Let*_*_Be 21

不,因为它不会杀死任何东西,它只会向进程发送一个信号.

默认情况下,甚至可以阻止或忽略此信号.

你不能阻止kill -9代表发送SIGKILL

等待进程死亡:

while kill -0 PID_OF_THE_PROCESS 2>/dev/null; do sleep 1; done
Run Code Online (Sandbox Code Playgroud)

  • 如果它处于`UNINTERRUPTIBLE`状态,它也会拒绝死亡 (2认同)