如果暂停的进程被终止,那么程序是否还在运行?

如果暂停的进程被终止,那么程序是否还在运行?

如果我暂停进程比方说,称为 firefox,使用ctrl+z 在Linux中。后来我杀死了进程,则#kill -9 <3643>Firefox 程序位于是否运行状态

*3643 是命令 #pgrep firefox 给出的进程 ID。

答案1

至少在 Linux 上,您可以使用 Ctrl-Z (SIGTSTP我认为它会发送 )或使用 来暂停程序,SIGSTOP然后它会进入T状态,然后

  • SIGTERM用( )进行拍摄kill $pid不会立即产生任何作用。它只是将信号排队,当进程继续时将对其进行处理。该进程可能已经安装了信号处理程序。
  • SIGKILL用( )射击它kill -9 $pid应该会在等待其他任何事情之前杀死它,因为无法捕获该信号。 (我不知道在加载的系统上这实际上有多即时。)

然而,如果进程处于D状态(“不间断睡眠”,通常与 I/O 相关),那么甚至SIGKILL可能不会杀死它,直到它等待的任何内容解决为止。

相关内容