在进程中捕获SIGKILL信号,在信号处理函数中调用
killpg(0,SIGKILL);
就可以实现杀死所有的父进程及所有的子进程了。
killpg系统调用】
功能描述:
将信号发送给进程组中的所有成员。
用法:
#include <signal.h>
int killpg(pid_t pgrp, int signal);
参数:
pgrp:信号将送往的组标识,假如其值为零,调用进程所在的进程组将会是信号送往的目标。
sig:准备发送的信号代码。
返回说明:
成功执行时,返回0。失败返回-1,errno被设为以下的某个值
EINVAL:指定的信号码无效
EPERM;没有给任何目标进程组发送信号的权限
ESRCH:目标进程组不存在
|a|b|
|a|b|