linux信号的简单运用,改变Ctrl+C的退出程序信号 编程源码

简介: linux信号的简单运用,改变Ctrl+C的退出程序信号 编程源码
void handler(int signum)
{
        printf("get sigum=%d",signum);//打印输出信号,返回的符号值
        printf("never quit\n");//打印输出
}
int main()
{
        signal(SIGINT,handler);//调用信号函数,捕捉ctrl+c信号,就调用handler函数
        while(1);//进入死循环
        return 0;
}
~                       

执行运行显示:


CLC@Embed_Learn:~/liuzhihao$ vi xinhao.c

CLC@Embed_Learn:~/liuzhihao$ gcc xinhao.c

CLC@Embed_Learn:~/liuzhihao$ ./a.out

^Cget sigum=2never quit(按Ctrl+C)

^Cget sigum=2never quit(按Ctrl+C)

^Cget sigum=2never quit(按Ctrl+C)

Killed


杀死进程:

CLC@Embed_Learn:~$ ps -aux | grep a.out(查看进程)

Warning: bad ps syntax, perhaps a bogus ‘-’? See http://procps.sf.net/faq.html

CLC 3777 103 0.0 4160 352 pts/0 R+ 13:51 0:10 ./a.out

CLC 3844 0.0 0.0 13588 980 pts/3 R+ 13:51 0:00 grep --color=auto a.out

CLC@Embed_Learn:~$ kill -9 3777(杀死PID为3777的进程)


目录
打赏
0
0
0
0
2
分享
相关文章
|
11天前
|
【Linux】阻塞信号|信号原理
本教程从信号的基本概念入手,逐步讲解了阻塞信号的实现方法及其应用场景。通过对这些技术的掌握,您可以更好地控制进程在处理信号时的行为,确保应用程序在复杂的多任务环境中正常运行。
114 84
如何在阿里云的linux上搭建Node.js编程环境?
本指南介绍如何在阿里云Linux服务器(Ubuntu/CentOS)上搭建Node.js环境,包含两种安装方式:包管理器快速安装和NVM多版本管理。同时覆盖全局npm工具配置、应用部署示例(如Express服务)、PM2持久化运行、阿里云安全组设置及外部访问验证等步骤,助你完成开发与生产环境的搭建。
|
1月前
|
Linux编程: 在业务线程中注册和处理Linux信号
本文详细介绍了如何在Linux中通过在业务线程中注册和处理信号。我们讨论了信号的基本概念,并通过完整的代码示例展示了在业务线程中注册和处理信号的方法。通过正确地使用信号处理机制,可以提高程序的健壮性和响应能力。希望本文能帮助您更好地理解和应用Linux信号处理,提高开发效率和代码质量。
56 17
|
1月前
|
Linux编程: 在业务线程中注册和处理Linux信号
通过本文,您可以了解如何在业务线程中注册和处理Linux信号。正确处理信号可以提高程序的健壮性和稳定性。希望这些内容能帮助您更好地理解和应用Linux信号处理机制。
62 26
Linux shell编程学习笔记30:打造彩色的选项菜单
Linux shell编程学习笔记30:打造彩色的选项菜单
嵌入式Linux系统编程 — 5.3 times、clock函数获取进程时间
在嵌入式Linux系统编程中,`times`和 `clock`函数是获取进程时间的两个重要工具。`times`函数提供了更详细的进程和子进程时间信息,而 `clock`函数则提供了更简单的处理器时间获取方法。根据具体需求选择合适的函数,可以更有效地进行性能分析和资源管理。通过本文的介绍,希望能帮助您更好地理解和使用这两个函数,提高嵌入式系统编程的效率和效果。
154 13
深入理解Linux系统下的Shell脚本编程
【10月更文挑战第24天】本文将深入浅出地介绍Linux系统中Shell脚本的基础知识和实用技巧,帮助读者从零开始学习编写Shell脚本。通过本文的学习,你将能够掌握Shell脚本的基本语法、变量使用、流程控制以及函数定义等核心概念,并学会如何将这些知识应用于实际问题解决中。文章还将展示几个实用的Shell脚本例子,以加深对知识点的理解和应用。无论你是运维人员还是软件开发者,这篇文章都将为你提供强大的Linux自动化工具。
|
5月前
|
【运维基础知识】Linux服务器下手写启停Java程序脚本start.sh stop.sh及详细说明
### 启动Java程序脚本 `start.sh` 此脚本用于启动一个Java程序,设置JVM字符集为GBK,最大堆内存为3000M,并将程序的日志输出到`output.log`文件中,同时在后台运行。 ### 停止Java程序脚本 `stop.sh` 此脚本用于停止指定名称的服务(如`QuoteServer`),通过查找并终止该服务的Java进程,输出操作结果以确认是否成功。
237 1
Linux shell编程学习笔记82:w命令——一览无余
Linux shell编程学习笔记82:w命令——一览无余
Linux环境下 java程序提交spark任务到Yarn报错
Linux环境下 java程序提交spark任务到Yarn报错
78 5