当前我用过的信号处理有两种,一个是signal注册处理函数,一个是sigaction注册处理函数。
其中,sigaction注册里,结构体struct sigaction的成员sa_handler只有信号返回;成员sa_sigaction还可以设置一个值,用来标识引发该信号的原因
但一个更好的实现,是使用signalfd,用epoll来统一in
读取signalfd时,读取结构体struct signalfd_signinfo,该结构体包含的信息相当丰富,满足比较大的需求
参考:Linux/UNIX系统编程手册上,22.11通过文件描述符来获取信号
第20章 信号:基本概念
第21章 信号:信号处理器函数
第22章 信号:高级特性
第26章 监控子进程
主要是SIGCHLD信号