kill()
作用:将信号发送给指定进程或进程组中的每一个进程。
函数原型:
#include <sys/types.h>
#include <signal.h>
int kill(pit_t pid, int sig)
函数参数
pid:pid为正,用于指定接收此信号的进程pid,
其他值见下方详解
sig:指定需要发送的信号,
0:表示不发送信号,担任执行错误检查,通常用于检查pid是否存在。
返回值
成功:0
失败:-1,并设置errno
pid不同值含义
- 正:信号sig将发送到的进程号
- 0:将sig信号发到进程组
- -1:将sig发送到当前进程有权限发送的信号的每个进程,但1(init)除外
- <-1:发送到ID为-pid的进程组中的每个进程。
在进程中将信号发送给另一个信号是需要权限的,信号的发送者和接收者的实际用户ID或有效用户ID必须相等。
raise()
作用:向自身发送信号
函数原型:
#include <signal.h>
int rasie(int sig)
函数参数:
sig:需要发送的信号
返回值:
成功:0
失败:非0
raise()相当于kill(getpid(), sig);