Linux进程终止

这篇具有很好参考价值的文章主要介绍了Linux进程终止。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一.返回码(错误码)

其实进程终止不外乎就以下三种情况:

Linux进程终止,Linux系统,linux,运维,服务器

1.strerror

我们一般关心程序为什么会失败而不关心为什么会成功。换句话说操作系统如何判断程序运行成功呢?

一般在程序末尾返回0以确定程序运行成功。而这个0会被父进程bash接收。

Linux进程终止,Linux系统,linux,运维,服务器

Linux进程终止,Linux系统,linux,运维,服务器

打印返回码

可以通过 echo $? 查看最近进程退出码。

例如将返回码改为11.

Linux进程终止,Linux系统,linux,运维,服务器

Linux进程终止,Linux系统,linux,运维,服务器

可以发现第一次返回码是11,第二次第三次就变为了0。这是因为第二三次打印的是echo命令的返回码。除了0是正确返回码,其他的都属于错误返回码,为了分辨不同错误码的意义,linux里专门有一个strerror将错误码翻译成字符串。

Linux进程终止,Linux系统,linux,运维,服务器

打印看看不同错误码对于的信息是怎样的

Linux进程终止,Linux系统,linux,运维,服务器

Linux进程终止,Linux系统,linux,运维,服务器

例如查找一个不存在的文件,系统会直接显示该文件不存在。

Linux进程终止,Linux系统,linux,运维,服务器

这是ls查找不成功返回2错误码,再有对应转化打印出来。

2.errno

errno是C语音提供的一个全局变量,它保存着最近一次执行程序的错误码。

Linux进程终止,Linux系统,linux,运维,服务器

打印errno就可以把最后错误的错误码打印出来,并且可以当作返回码返回给父进程。

二.exit

退出程序我们可以直接return,也可以使用exit函数。

Linux进程终止,Linux系统,linux,运维,服务器

Linux进程终止,Linux系统,linux,运维,服务器

Linux进程终止,Linux系统,linux,运维,服务器

那么return和exit有什么区别呢?

例子

Linux进程终止,Linux系统,linux,运维,服务器

Linux进程终止,Linux系统,linux,运维,服务器

Linux进程终止,Linux系统,linux,运维,服务器

exit在任意位置被调用都标志着该进程直接退出。而return在其他函数中代表函数结束,在main函数里代表进程退出。

三._exit

1.简单使用

Linux进程终止,Linux系统,linux,运维,服务器

Linux进程终止,Linux系统,linux,运维,服务器

Linux进程终止,Linux系统,linux,运维,服务器

2.exit和_exit的区别

注意这里打印没有\n,而对于linux来说,如果printf没有加\n,那么它会先在缓存区里,等程序执行完毕后再打印,也就是说要先休眠一秒再打印

Linux进程终止,Linux系统,linux,运维,服务器

Linux进程终止,Linux系统,linux,运维,服务器

接下来同一份代码,将exit改为_exit看看。

Linux进程终止,Linux系统,linux,运维,服务器

Linux进程终止,Linux系统,linux,运维,服务器

可以发现它 并没有将缓冲区里的数据打印出来。

Linux进程终止,Linux系统,linux,运维,服务器

_exit是系统接口,它会直接在系统层面将进程终止,exit是库函数先会将文件等内容刷新在调用_exit文章来源地址https://www.toymoban.com/news/detail-722153.html

到了这里,关于Linux进程终止的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • linux并发服务器 —— 多进程并发(四)

    程序是包含一系列信息的文件,描述了如何在运行时创建一个进程; 进程是正在运行的程序的实例,可以用一个程序来创建多个进程; 用户内存空间包含程序代码以及代码所使用的变量,内核数据结构用于维护进程状态信息; 进程控制块(PCB):维护进程相关的信息,tas

    2024年02月11日
    浏览(40)
  • 【Linux 服务器运维】定时任务 crontab 详解 | 文末送书

    本文思维导图概述的主要内容: 1.1 什么是 crontab Crontab 是一个在 Unix 和 Linux 操作系统上 用于定时执行任务 的工具。它允许用户创建和管理计划任务,以便在特定的时间间隔或时间点自动运行命令或脚本。Crontab 是 cron table 的缩写, cron 指的是 Unix 系统中的一个后台进程,它

    2024年02月08日
    浏览(62)
  • Linux服务器上查询进程 ps aux

    在Linux服务器上查询进程,有以下几种方法: 使用ps命令。这个命令用于报告当前系统的进程状态。可以用以下方式使用ps命令来查看进程信息: ps aux:显示系统中所有进程的信息。 ps -e:显示所有进程的信息。 ps -f:显示进程的所有信息。 ps -l:以长格式显示进程信息。

    2024年02月05日
    浏览(44)
  • 【Linux运维】shell脚本检查服务器内存和CPU利用率

    在管理服务器时候写了一个 shell脚本,在服务上实现每天凌晨3点查系统的指定文件夹下的容量大小,如果超过10G就要删除3天前的内容,还要时刻查询内存和cpu利用率,如果超过80%就要提示用户出现过载 将以上代码保存为一个.sh文件,然后通过crontab在每天凌晨3点运行即可:

    2024年02月09日
    浏览(48)
  • Linux服务器中查看进程的四种方法

    1. 使用 ps aux 命令来查看,能以简单列表的形式显示出进程信息 ps aux 用于报告当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序. ps 命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态、进程是否结束、进

    2024年02月02日
    浏览(30)
  • Linux网络编程:多进程 多线程_并发服务器

    文章目录: 一:wrap常用函数封装 wrap.h  wrap.c server.c封装实现 client.c封装实现 二:多进程process并发服务器 server.c服务器 实现思路 代码逻辑  client.c客户端 三:多线程thread并发服务器 server.c服务器 实现思路 代码逻辑  client.c客户端 ​​​​   read 函数的返回值 wrap.h  wrap

    2024年02月12日
    浏览(44)
  • Linux服务器常见运维性能测试(1)综合跑分unixbench、superbench

    最近需要测试一批服务器的相关硬件性能,以及在常规环境下的硬件运行稳定情况,需要持续拷机测试稳定性。所以找了一些测试用例。本次测试包括在服务器的高低温下性能记录及压力测试,高低电压下性能记录及压力测试,常规环境下CPU满载稳定运行的功率记录。 这个系

    2024年02月04日
    浏览(55)
  • Linux本地部署1Panel服务器运维管理面板并实现公网访问

    1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器,包括主机监控、文件管理、数据库管理、容器管理等 下面我们介绍在Linux 本地安装1Panel 并结合cpolar 内网穿透工具实现远程访问1Panel 管理界面 执行如下命令一键安装 1Panel: 安

    2024年02月04日
    浏览(58)
  • 基于linux下的高并发服务器开发(第二章)- 2.7 进程退出、孤儿进程、僵尸进程

    ◼ 父进程运行结束,但子进程还在运行(未运行结束),这样的子进程就称为孤儿进程 (Orphan Process)。 ◼ 每当出现一个孤儿进程的时候,内核就把孤儿进程的父进程设置为 init ,而 init 进程会循环地 wait() 它的已经退出的子进程。这样,当一个孤儿进程凄凉地结束 了其生

    2024年02月16日
    浏览(40)
  • [1Panel]开源,现代化,新一代的 Linux 服务器运维管理面板

    本期测评试用一下1Panel这款面板。1Panel是国内飞致云旗下开源产品。整个界面简洁清爽,后端使用GO开发,前端使用VUE的Element-Plus作为UI框架,整个面板的管理都是基于docker的,想法很先进。官方还提供了视频的使用教程,本期为大家按照本专栏的基本内容进行多方面的测评。

    2024年02月07日
    浏览(73)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包