killpg()函數 Unix/Linux
內容簡介
#include <signal.h>int killpg(int pgrp, int sig);
描述
killpg() sends the signal sig to the process group pgrp. See signal(7) for a list of signals. If pgrp is 0, killpg() sends the signal to the sending process’s process group.(POSIX says: If pgrp is less than or equal to 1, the behaviour is undefined.)
For a process to have permission to send a signal it must either be privileged (under Linux: have the CAP_KILL capability), or the real or effective user ID of the sending process must equal the real or saved set-user-ID of the target process. In the case of SIGCONT it suffices when the sending and receiving processes belong to the same session.
返回值
On success, zero is returned. On error, -1 is returned, and errno is set appropriately.錯誤
標簽 | 描述 |
---|---|
EINVAL | Sig is not a valid signal number. |
EPERM | The process does not have permission to send the signal to any of the target processes. |
ESRCH | No process can be found in the process group specified by pgrp. |
ESRCH | The process group was given as 0 but the sending process does not have a process group. |