怎么获取系统发出的信号???????

ling1874 2009-09-20 09:49:19
就是当ctrl+c或者切断电源的时候,系统都会发出一个信号。
像SIGHUP SIGINT 之类的 东西
可以写出一个方法获取到它吗?
我是想让系统关机的时候 用signal绑定一个倒计时函数,但是我不知道关机的信号是什么 。这个信号会不会被隐藏掉?

ps:已经确定不是SIGURG 了
...全文
72 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Darcy_Gin 2009-10-31
  • 打赏
  • 举报
回复
我也是初学的,最近看过这个代码,不知道对你是否有帮助。
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
void my_func(int sign_no)
{
if(sign_no==SIGINT)
printf("I have get SIGINT\n");
else if(sign_no==SIGQUIT)
printf("I have get SIGQUIT\n");
}
int main()
{
printf("Waiting for signal SIGINT or SIGQUIT \n ");
signal(SIGINT, my_func);
signal(SIGQUIT, my_func);
pause();
exit(0);
}
cometure2000 2009-10-15
  • 打赏
  • 举报
回复
ctrl + c 在LINUX中是发送的SIGSTOP(是结束进程的信号) ctrl + \ 在LINUX中师发送SIGKILL吧!要想知道具体哪些发什么信号,只要你有一个Linux系统就能找到了。我也刚刚学。。。
ling1874 2009-09-20
  • 打赏
  • 举报
回复
这个具体是几多 可以用什么函数捕获到吗?
beyondma 2009-09-20
  • 打赏
  • 举报
回复
你是用LINUX吧,我记得的SIGTER?

21,597

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧