sigaction实例

sigaction实例#include#include#include#include#include#include#include#include#include#include#include staticvoidsignal_handle(intsign){       printf(“Test:Systemsignal(%d

大家好,又见面了,我是你们的朋友全栈君。

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

#include <unistd.h>

#include <sys/types.h>

#include <errno.h>

#include <time.h>

#include <sys/stat.h>

#include <sys/fcntl.h>

#include <syslog.h>

#include <signal.h>

 

static void signal_handle(int sign)

{

       printf(“Test:System signal(%d) received,exit \n”,sign);

       exit(0);

}

void signal_oact(int sign)

{

       printf(“Test:in signal_oact”);

}

void signal_set()

{

       struct sigaction act,old_act;

       //act

       act.sa_handler = signal_handle;

       sigemptyset(&act.sa_mask);

       act.sa_flags = 0;

       //oact

       old_act.sa_handler = signal_oact ;

       //

       if(sigaction(SIGHUP,&act,&old_act) <0)

       {

               printf(“FATAL errorfor sigaction in function signal_set \n”);

                exit(-1);

       }

       sigaction(SIGSEGV,&act,NULL);

       sigaction(SIGINT,&act,&old_act);

       sigaction(SIGTERM,&act,NULL);

       sigaction(SIGQUIT,&act,NULL);

       return;

}

 

int main()

{

       signal_set();

       while(1)

       {

                printf(“test:waitsignal\n”);

                sleep(1);

       }

       return 0;

}

运行后,执行ctrl+c命令,产生一个SIGINT信号,程序会执行 signal_handle函数

SIGINT信号,程序终止(interrupt)信号,在用户键入INTR字符(通常是Ctrl-C)时发出,用于通知前台进程组终止进程。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/141109.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mac navicat激活码【中文破解版】

    (mac navicat激活码)JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。建立在开源IntelliJ平台之上,过去15年以来,JetBrains一直在不断发展和完善这个平台。这个平台可以针对您的开发工作流进行微调并且能够提供…

    2022年3月26日
    43
  • 深度学习在图像处理中的应用(tensorflow2.4以及pytorch1.10实现)

    深度学习在图像处理中的应用(tensorflow2.4以及pytorch1.10实现)本人在读研期间的研究方向是图像处理以及深度学习(主要是图像分类和目标检测)。在做深度学习时使用的是tensorflow深度学习框架,学习全是自学,很多资源都是在Github上找的。我发现现在Github上很多深度学习的开源项目都是用的tensorflow和pytorch框架。所以现在也开始学习pytorch框架,之前一直用的是tensorflow1.x版本,今年正好迎来了新的tensorlfow大…

    2022年5月22日
    39
  • war包解压后怎么重新打war包_war包和zip

    war包解压后怎么重新打war包_war包和zip$ClipboardContent$

    2022年10月4日
    3
  • jsonp详解

    jsonp详解

    2021年8月24日
    70
  • jQuery validationEngine自定义提醒

    jQuery validationEngine自定义提醒在网上看了好多自定义验证样式,好多都是不是自己想要的!打开源码,看了一下挺简单的!将下面的样式添加到页面上就可以实现黑色主题的提醒!想要什么样式基本都可以自己修改了!很方便/*验证样式*/.formError.formErrorContent{ width:100%; /*错误提示框颜色*/ background:#000; position:rela

    2022年10月3日
    4
  • 致 Python 初学者「建议收藏」

    致 Python 初学者「建议收藏」欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多Python的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触python这门编程语言,从2009年开始单一使用python应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的Python初学者走出困境、快速成长。希望我的经验能真正帮到你

    2022年4月27日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号