08信号函数用法

1.发送信号给任意进程 int kill(pid_t pid, int sig);
成功0;失败EOF
示例 kill(pid,9);
pid: 正数,要接收信号的进程号;0,信号被发送到与pid进程相同的进程组中;-1,信号发送给所有的进程表中的进程
sig: 信号

2.发送给当前进程 int raise(int sig);
成功0,错误-1
示例 · raise(9);
sig: 信号

3.闹钟信号发送 unsigned int alarm(unsined int seconds);
成功:如果调用此次alarm前,进程已经有闹钟时间,则返回上一个闹钟时间的剩余时间,否则0;
出错-1
seconds 指定秒数
alarm只会发送SIGALARM信号;alarm会让内核定时一段时间后发送信号,raise会让内核立刻发送信号。

4.信号处理 void (*signal(int signum, void (*handler)(int)))(int);
成功时返回原先的信号处理函数,失败SIG_ERR
示例 void myfun(int signum);
signal(14,myfun);
signal(14,SIG_IGN);
signal(14,SIG_DFL);
signum 要设置的信号类型
handler 指定的信号处理函数:1、SIG_DFL代表缺省方式,2、SIG_IGN代表忽略信号,信号处理函数的接口是确定的,传入int,无返回值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值