代码如下,调用 下面函数 生成随机数。我想生成玩就终止进程,但调用终止进程方法,并不能终止。是我用的方式不对吗。没调用一次就开个进程。cpu 都要爆表了。
我机器是mac
const child_process = require('child_process');
async function generStr(){
let childProcess="";
const randomStr = await new Promise((resolve, reject) => {
childProcess = child_process.exec("LC_CTYPE=C tr -dc A-Za-z0-9 < /dev/urandom | head -c 20");
childProcess.stdout.on('data', (data) => {
resolve(data.toString())
});
});
console.log(process.platform)
childProcess.kill()
process.exit(0)
childProcess.stdout.on('close', (code, signal) => {
console.log(`子进程收到信号 ${signal} ${code}而终止`);
});
return randomStr;
}
实测
childProcess.kill(childProcess.pid+1)
可行,这里我有点不清楚为啥返回的pid
不是子进程pid
,有了解的大牛还请帮忙解释下。