用于退出的命令是什么?(即终止Node.js进程)


当前回答

我有一个应用程序,我想:

向用户发送电子邮件退出并返回错误代码

我必须将process.ext(代码)挂接到退出事件处理程序,否则邮件将不会被发送,因为调用process.ext(代码)直接杀死异步事件。

#!/usr/bin/nodejs
var mailer = require('nodemailer');
var transport = mailer.createTransport();
mail = {
  to: 'Dave Bowman',
  from: 'HAL 9000',
  subject: 'Sorry Dave',
  html: 'Im sorry, Dave. Im afraid I cant do <B>THAT</B>.'
}
transport.sendMail(mail);
//process.exit(1);
process.on('exit', function() { process.exit(1); });

其他回答

由于进程是全局对象,所以不需要导入任何模块。以下函数退出或终止当前节点进程。

process.ext(代码)process.cill(process.pid)process.abourt()

节点js中的退出有两种方式:

显式调用process.exit()。或者,如果nodejs事件循环完成了所有任务,并且没有任何事情可做。那么,节点应用程序将自动退出。

它是如何工作的?

如果你想强制执行循环停止进程,你可以使用全局变量进程,它是EventEmitter的一个实例。因此,当调用process.exit()时,实际上会发出退出事件,该事件会立即结束所有任务,即使仍有异步操作未完成。

process.exit()将退出代码(整数)作为参数。代码0是默认值,这意味着它将以“成功”退出。而代码1表示它以“失败”退出。

ctrl+C终止当前进程ctrl+C两次是退出REPL shellctrl+c退出REPL SHELL

在命令行中,.ext是您想要的:

$ node
> .exit
$

它记录在REPL文档中。REPL(Read Eval Print Loop)是Node命令行的名称。

在正常程序中,使用process.ext([code])。

从nodejs.org官方文档中:

process.exit(code)

使用指定的代码结束进程。如果省略,退出将使用“成功”代码0。

要退出并显示“失败”代码:

process.exit(1);