linux alarm函数简介
来源:互联网 发布:c 端口映射 源码下载 编辑:程序博客网 时间:2024/06/03 16:35
上代码:
#include <stdio.h>#include <unistd.h>#include <stdlib.h>#include <signal.h>int main(int argc, char *argv[]) { alarm(5);sleep(20); printf("end!\n"); return 0; }运行5秒后, 内核向进程发出SIGALRM信息, 进程被终止, 所以上述程序的结果是:Alarm clock
当然, 我们也可以人为定义信号处理函数, 如下:
#include <stdio.h>#include <unistd.h>#include <stdlib.h>#include <signal.h>void sig_alarm(int sig) { printf("sig is %d, sig_alarm is called\n", sig);}int main(int argc, char *argv[]) { signal(SIGALRM, sig_alarm); // 注册alarm信号对应的函数 alarm(5); // 5秒后,内核向进程发出alarm信号, 执行对应的信号注册函数sleep(20); printf("end!\n"); return 0; }结果:
sig is 14, sig_alarm is called
end!
可以看到, 内核向应用进程发出SIGALRM信号, 执行对应的注册函数, 而非杀死进程。
很简单, 先说这么多。
阅读全文
1 0
- linux alarm函数简介
- Linux alarm闹钟函数
- linux alarm函数
- linux alarm函数使用
- linux alarm函数
- linux alarm函数
- linux C之alarm函数
- linux C之alarm函数
- linux alarm和可重入函数
- linux C之alarm函数
- linux C之alarm函数(更改)
- linux C之alarm函数(更改)
- alarm函数
- alarm 函数
- alarm 函数
- alarm函数
- alarm()函数
- alarm 函数time函数
- Android垂直方向滚动的跑马灯,带gif
- 关于软件工程中框架的认识
- ajax跨域请求
- Java基本数据类型
- C++实例训练(1)--银行卡管理系统
- linux alarm函数简介
- VC实现一次性读取文件全部内容
- Android自定义自己的动画插补器
- Jmeter使用技巧集锦
- 入门训练 Fibonacci数列 圆的面积 序列求和 A+B问题
- Java解析XML
- ubuntu 下搭建tftp服务
- 十大基础排序 · 八 --- 计数排序
- jQuery实现星星评价+ng实现日期