U Need To Know When You Close Your Eyes
你需要知道什么时候闭上眼睛
进程通信方式之异步信号
sighandler_t signal(int signum, sighandler_t handler);
int sigprocmask(int how, const sigset_t *set, sigset_t *oldset);
int kill( pid_t pid, int sig );
系统当中的信号分类
非实时信号
- 1-31的信号值的信号
- 每一个非实时信号一般都对应着一个默认执行动作(缺省动作)
- 每一个非实时信号都有自己的名字
- 每一个非实时信号都有自己触发的系统事件
- 信号可以被嵌套执行
- 信号丢失(非实时信号的记录信号的方式是用一个标志位记录的)
实时信号
- 34-64的信号值的信号
信号的知识点
SIGHUP 1 Term 当关闭控制终端(登陆窗口)时触发该信号
SIGINT 2 Term 按下 ctrl + c 时触发该信号
SIGQUIT 3 Core 按下 ctrl + \ 时触发该信号

本文主要介绍了Linux系统编程中的进程通信方式——异步信号,包括非实时和实时信号的特性、默认行为,重点讲解了信号的API如`signal`、`sigprocmask`和`kill`的使用,以及信号的安全机制和处理策略。
最低0.47元/天 解锁文章
1215

被折叠的 条评论
为什么被折叠?



