kill函数返回无效参数

时间:2012-01-06 19:02:09

标签: c linux gcc x86

我正在使用kill函数来kill一个进程。但是,它返回-1和perror显示"无效参数"。阅读kill的手册,它表示如果提供了错误的信号值,则会发生此错误。我正在通过-9SIGKILL,就像kill( SIGKILL, pid )一样。

那为什么它会给出无效的参数错误。请注意,调用kill函数的进程是我们尝试杀死的进程的子进程。

2 个答案:

答案 0 :(得分:5)

kill反过来采用其论点。来自man page

int kill(pid_t pid, int sig);

由于您传递PID代替信号编号,反之亦然,因为perror告诉您,其中至少有一个很可能是无效参数。

答案 1 :(得分:2)

您的kill( SIGKILL, pid );应为kill(pid, SIGKILL);

man 2 kill