当没有更多异步操作时,节点通常以 0 状态码退出
未处理的。还有其他退出代码如下所述:
1 - 未捕获的致命异常:存在未捕获的异常,并且未由域或 uncaughtException 事件处理程序处理。
2 - 未使用:由 Bash 保留用于内置滥用。
3 - 内部 JavaScript 解析错误:Node 引导过程中的内部 JavaScript 源代码导致解析错误。这是
极为罕见,一般只能在开发过程中发生
节点本身。
4 - 内部 JavaScript 评估失败:Node 引导过程中的内部 JavaScript 源代码未能返回
评估时的函数值。这是极其罕见的,而且通常
只能发生在 Node 本身的开发过程中。
5 - 致命错误:V8 中存在致命的不可恢复错误。通常,一条带有前缀 FATAL 的消息将打印到 stderr
错误。
6 - 非函数内部异常处理程序:有一个未捕获的异常,但内部致命异常处理程序函数是
以某种方式设置为非函数,并且无法调用。
7 - Internal Exception Handler Run-Time Failure:有一个未捕获的异常,内部致命异常处理函数
自己在尝试处理它时抛出了一个错误。
8 - 未使用
9 - 无效参数:指定了未知选项,或者提供了需要值的选项而没有提供值。
10 - 内部 JavaScript 运行时失败:Node 引导过程内部的 JavaScript 源代码在运行时抛出错误
调用了引导函数。这是极其罕见的,而且
一般只能在Node自身开发过程中发生。
11 - 无效的调试参数:设置了--debug 和/或--debug-brk 选项,但选择了无效的端口号
>128 - 信号退出:如果 Node 收到一个致命信号,例如 SIGKILL 或 SIGHUP,那么它的退出代码将是 128 加上值
的信号代码。这是标准的 Unix 做法,因为退出代码
被定义为 7 位整数,并且信号出口设置高位
位,然后包含信号码的值。