TODO:Golang Linux进程退出说明

Golang使用os.Exit(code)进程退出导致当前程序退出并返回给定的状态代码。传统上,code代码为零表示成功退出,非零错误退出。

syscall.Exit可以调用不同平台的操作系统的退出。

code值为0-255,当code为非0时,os.Exit(code)会返回,对应值当状态码

exit status 128

当code为0,则正常退出。code值可自定义对应当意义进行相应业务场景使用。code的值在自然数是按从0至255的倍数进行循环,例如自然数为256,在进程退出的时候返回的是0;256-511==》code值为0-255,负数也是一样,-256到-1==》0-255。

退出码是使用情景,在linux下使用得淋漓尽致

0 命令成功完成

1 通常的未知错误

2 误用shell命令

126 命令无法执行

127 没有找到命令

128 无效的退出参数

128 +x使用Linux信号x的致命错误。

130 使用Ctrl-C终止的命令

255 规范外的退出状态

echo $?是输出上一个命令的退出码,从图中我们看到了0,126,127都是我们意料的情况。这是Linux下的退出码的使用情况,我们自己的软件也可以自我定义。



wxgzh:ludong86

时间: 2024-08-25 00:20:27

TODO:Golang Linux进程退出说明的相关文章

Linux 进程退出后自动启动

/********************************************************************** * Linux 进程退出后自动启动 * 说明: * 在系统中,我们有时候会希望后台程序能够一直运行,即使程序出错了, * 也是希望程序能够自动启动,并继续运行. * * 2016-12-10 深圳 南山平山村 曾剑锋 *********************************************************************

Linux进程退出详解(do_exit)--Linux进程的管理与调度(十四))

日期 内核版本 架构 作者 GitHub CSDN 2016-05-12 Linux-4.6 X86 & arm gatieme LinuxDeviceDrivers Linux进程管理与调度 Linux进程的退出 linux下进程退出的方式 正常退出 从main函数返回return 调用exit 调用_exit 异常退出 调用abort 由信号终止 _exit, exit和_Exit的区别和联系 _exit是linux系统调用,关闭所有文件描述符,然后退出进程. exit是c语言的库函数,他最

Linux进程退出详解(do_exit)--Linux进程的管理与调度(十四)

Linux进程的退出 linux下进程退出的方式 正常退出 从main函数返回return 调用exit 调用_exit 异常退出 调用abort 由信号终止 _exit, exit和_Exit的区别和联系 _exit是linux系统调用,关闭所有文件描述符,然后退出进程. exit是c语言的库函数,他最终调用_exit.在此之前,先清洗标准输出的缓存,调用用atexit注册的函数等, 在c语言的main函数中调用return就等价于调用exit. _Exit是c语言的库函数,自c99后加入,等

飞鸽传书linux进程退出不彻底

问题描述: 飞鸽传书linux版本(QIpmsg)是有问题的. 在ubuntu14.04上运行的时候,没有任务栏图标,点击关闭也不能退出进程,端口仍然占用,无法再次运行. 这个问题截至1.2.141211版本中依然存在,不知道什么时候能解决. 解决之道: 我用飞鸽主要是传文件,但是我没耐心坐等,所以要自己动动手. 写个脚本,从控制台启动,用完以后直接 ^C结束,干干净净. #!/bin/bash cd ~/app/ipmsg ./QIpmsg.1.2.141211 这样用着就好一点了.

Linux进程退出--exit与return的区别

通过fork()函数来创建一个进程,那么如何终止一个进程呢? 进程的退出分为正常退出和异常退出: 正常退出: 1).在main()函数执行return. 2).调用exit()函数 3).调用_exit()函数 异常退出可能调用某种函数也可能收到某种信号. 现在只讨论正常退出: (1)exit和return 的区别: a.exit是一个函数,有参数.exit执行完后把控制权交给系统 b.return是函数执行完后的返回.renturn执行完后把控制权交给调用函数. exit()和_exit()

【Todo】Linux进程调度算法学习

参考这篇文章 http://blog.chinaunix.net/uid-27052262-id-3239260.html Linux支持三种进程调度策略,分别是SCHED_FIFO . SCHED_RR和SCHED_NORMAL.Linux支持两种类型的进程,实时进程和普通进程.实时进程可以采用SCHED_FIFO 和SCHED_RR调度策略:普通进程采用SCHED_NORMAL调度策略. 本文主要讨论普通进程的调度算法,为了描述方便,后面章节中的"进程"指"普通进程&qu

Linux进程管理与调度-之-目录导航【转】

转自:http://blog.csdn.net/gatieme/article/details/51456569 版权声明:本文为博主原创文章 && 转载请著名出处 @ http://blog.csdn.net/gatieme 目录(?)[-] 项目链接 进程的描述 进程的创建 进程的加载与运行 进程的退出 进程的调度 调度普通进程-完全公平调度器CFS 日期 内核版本 架构 作者 GitHub CSDN 2016-07-21 Linux-4.6 X86 & arm gatieme

linux c 退出进程的代码

将写内容过程经常用的一些内容片段收藏起来,如下的资料是关于linux c 退出进程的内容. #include<stdlib.h> voidexit(int status); voidabort(void) #include<unistd.h> void_exit(int status) #include<assert.h> voidassert(int expression) atexit:在其中注册的无参数函数在退出时调用.成功返回0失败返回-1,并影响errnoon

Linux进程的睡眠和唤醒

1   Linux进程的睡眠和唤醒 在Linux中,仅等待CPU时间的进程称为就绪进程,它们被放置在一个运行队列中,一个就绪进程的状态标志位为TASK_RUNNING.一旦一个运行中的进程时间片用完, Linux内核的调度器会剥夺这个进程对CPU的控制权,并且从运行队列中选择一个合适的进程投入运行. 当然,一个进程也可以主动释放CPU的控制权.函数schedule()是一个调度函数,它可以被一个进程主动调用,从而调度其它进程占用CPU.一旦这个主动放弃CPU的进程被重新调度占用CPU,那么它将从