第10章 信号
2015-10-12 13:32
453 查看
1) signal
信号函数的原型如下#include <signal.h> typedef void (*sighandler_t)(int);
一个简单的信号绑定的例子,当向该程序发送-USER1或者-USER2信号时,调用信号处理函数sig_user
signal_demo.cpp
#include <signal.h>$ #include <stdio.h>$ #include <unistd.h>$ static void sig_usr(int); /* one handler for both signals */$ int main(void)$ { if (signal(SIGUSR1, sig_usr) == SIG_ERR)$ printf("can’t catch SIGUSR1"); if (signal(SIGUSR2, sig_usr) == SIG_ERR)$ printf("can’t catch SIGUSR2"); for ( ; ; )$ pause();$ return 0;$ } static void sig_usr(int signo) /* argument is signal number */$ { if (signo == SIGUSR1)$ printf("received SIGUSR1\n");$ else if (signo == SIGUSR2)$ printf("received SIGUSR2\n");$ else$ printf("received signal %d\n", signo);$ }
测试
g++ signal_demo.cpp -o signal_demo
./signal_demo &
kill -USER1 pid
kill -USER2 pid
相关文章推荐
- AS gradle问题 解决记录
- HDU 4296 Buildings
- HDU 5033 Building(模拟凸包建立过程)
- iOS使用xib自定义uiview
- 【UWP】UI适配整理
- Android UI线程与子线程
- 解决“Dynamic Web Module 3.0 requires Java 1.6 or newer.”错误
- iOS--第一响应者-------键盘协议之一UITextFieldDelegate
- Xcode7开发下 UITableView 在group模式下面 顶部空白的问题和解决
- String StringBuilder StringBuffer的区别
- 基于snowflake算法实现了一个Sequence的Rest服务
- Android中实现UI模板-topbar
- Jetty Quick Start
- UITableView分割线处理
- iOS开发-------模拟团购网站(UITableView 表格视图)以及自定义cell
- HDU 2454 Degree Sequence of Graph G(Havel-Hakimi定理,图论基础)
- [LeetCode]: 62: Unique Paths
- UESTC - 92 Journey(LCA)1012四川省赛
- UITableViewCell的选中时的颜色设置
- 更改UIPickerView选中框颜色