我有子进程,因为我正在将流传输到父进程。
在 child.js 中
let stream = readdirp(pathname);
stream.pipe.pipe(process.stdout);
在 parent.js 中
let file = child => {
let estream = es.map((data, next) => {
_this.s3MultiUpload(JSON.parse(data), data, next);
//i uploding this files to s3.
});
child.on("end", (code, signal) => {
console.log("stream ended"); // `here is my problem`
child.kill();
});
child.on("exit", (code, signal) => {
console.log(code);
console.log(signal);
child.kill();
});
return estream;
};
child = fork(filePath, { silent: true });
child.stdout.pipe(this.file(child));
我的问题是在我将所有文件上传到 s3 流之前结束。我研究了背压,但我不明白如何在这里实现?
我想我需要添加回调或其他东西来处理标准输出管道。我不知道
你能帮我么