信号集

1.信号集操作函数

函数声明

#include <signal.h>

int sigemptyset(sigset_t *set);  //将信号集设置为空

int sigfillset(sigset_t *set);   //将信号集设置为满

int sigaddset(sigset_t *set, int signum);  //在set信号集中添加signum信号

int sigdelset(sigset_t *set, int signum);  //在set信号集中删除signum信号

int sigismember(const sigset_t *set, int signum);   //查看set信号集有没有signum信号

参数

set为 sigset_t 类型,即信号集,signum为信号

返回值

sigemptyset(), sigfillset(), sigaddset(), 和 sigdelset()成功返回0;失败返回-1

sigismember() 1代表set信号集有signum信号,0代表没有,-1代表出错,并设置errno

2.设置信号屏蔽字

​ sigprocmask(2)

函数声明

#include <signal.h>

int sigprocmask(int how, const sigset_t  *set,  sigset_t  *oldset);

3.等待信号

​ sigsuspend(2)

#include <signal.h>
int sigsuspend(const sigset_t *mask);

4.为信号注册新行为

重要,完全取代signal( )

sigaction(2)

#include <signal.h>
int sigaction(int signum, const struct sigaction *act,struct sigaction *oldact);

5.产生信号

setitimer(2)

#include <sys/time.h>

int getitimer(int which, struct itimerval *curr_value);
int setitimer(int which, const struct itimerval *new_value,struct itimerval *old_value);
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 以前读书,看到项羽那句“富贵不归故乡,如锦衣夜行,谁人知之者”总和其他人一般嗤笑着他的短视好面子,远不如太祖 “埋...
    倚剑_听雪阅读 541评论 0 0
  • 掌控谈判 1.安排议程 着眼于利于安排细腻事项,把相对容易的事项放在最前面讨论 哪些是直接关系自身利益的协议事项,...
    霄歌阅读 232评论 0 0
  • 好多年的心结,今天自己悄悄治疗了,没有特别难过,只是看透了~再留恋,也没有好结果,所以还是勇敢地说拜拜吧。嘿,生活...
    潇雨姑娘阅读 302评论 1 3