gpt4 book ai didi

node.js - Node.js如何获取子进程的进程ID

转载 作者:太空宇宙 更新时间:2023-11-03 23:13:17 28 4
gpt4 key购买 nike

我想从子进程获取进程ID,因为我正在使用这个命令,这就是我尝试过的,let unittest_api_backend_process_id = child_process_obj.pid;但它不起作用,在这里我已经添加了我的整个代码,任何人都可以检查我的下面的代码并帮助我解决这个问题吗?任何帮助将非常感激

const execSync = require('child_process').exec;
let child_process_obj = execSync('nodemon server.js ', {
cwd: process.env.BACKEND_FOLDER_PATH
});

最佳答案

我相信您需要使用exec而不是execSync ,这将返回 child_process包含 PID 的对象。

execSync 返回标准输出,它不会给我们 PID。另外,execSync 在进程退出之前不会返回,这在这种情况下可能不起作用。

当进程终止时,传递给 exec 的回调将被调用并输出。

我已更新以正确传递 cwd。

const exec = require('child_process').exec;

let child_process_obj = exec('nodemon server.js ', {
cwd: process.env.BACKEND_FOLDER_PATH
}, (error, stdout, stderr) => {
// Callback will be called when process exits..
if (error) {
console.error(`An error occurred: `, error);
} else {
console.log(`stdout:`, stdout);
console.log(`stderr:`, stderr);
}
});

console.log(`Launched child process: PID: ${child_process_obj.pid}`);

关于node.js - Node.js如何获取子进程的进程ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58691940/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com