【问题标题】:kill function returning invalid argument杀死函数返回无效参数
【发布时间】:2012-01-06 19:02:08
【问题描述】:

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

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

【问题讨论】:

  • 从@CarlNorum 的回答看来,您似乎颠倒了您的论点......

标签: c linux gcc x86


【解决方案1】:

kill 以相反的方式接受它的论点。来自man page

int kill(pid_t pid, int sig);

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

【讨论】:

    【解决方案2】:

    您的kill( SIGKILL, pid ); 应该是kill(pid, SIGKILL);

    man 2 kill

    【讨论】:

      猜你喜欢
      • 2017-08-05
      • 1970-01-01
      • 2011-05-20
      • 2012-09-28
      • 2011-09-23
      • 1970-01-01
      • 1970-01-01
      • 2021-11-16
      • 1970-01-01
      相关资源
      最近更新 更多