ede*_*bin 6 exit child-process node.js
我在节点工作,因为它通过视觉工作室代码扩展发生.我成功创建子进程,并可以命令终止它们.我希望在进程意外退出时运行代码,这似乎是"退出"事件的目的,但我不知道如何调用它,这是我正在使用的代码,进程运行,但是没有检测到/登录退出,请注意output.append是visual studio的特定版本的console.log():
child = exec('mycommand', {cwd: path},
function (error, stdout, stderr) {
output.append('stdout: ' + stdout);
output.append('stderr: ' + stderr);
if (error !== null) {
output.append('exec error: ' + error);
}
});
child.stdout.on('data', function(data) {
output.append(data.toString());
});
Run Code Online (Sandbox Code Playgroud)
这里有四件我尝试过的东西不能用于登录退出:
child.process.on('exit', function(code) {
output.append("Detected Crash");
});
child.on('exit', function(code) {
output.append("Detected Crash");
});
child.stdout.on('exit', function () {
output.append("Detected Crash");
});
child.stderr.on('exit', function () {
output.append("Detected Crash");
});
Run Code Online (Sandbox Code Playgroud)
查看子进程模块的node.js源代码,该.exec()方法本身就是这样做的:
child.addListener('close', exithandler);
child.addListener('error', errorhandler);
Run Code Online (Sandbox Code Playgroud)
并且,我认为.on()是一个捷径.addListener(),所以你也可以这样做:
child.on('close', exithandler);
child.on('error', errorhandler);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7053 次 |
| 最近记录: |