我有一个程序,它从流中读取一个大文件并将其写入文件。
这是从流
中读取文件var stream = new Stream.PassThrough();
Request(options, function (error, res, body) {
if (error) {
Logger.error('ProxyManager', 'getStream', error);
return callback(error);
}
}).pipe(stream); // first pipe call
这是写文件
var outputFile = fs.createWriteStream(filePath);
stream.pipe(outputFile); // second pipe call
我的问题是当传输一个大文件时,进程需要大量内存,这似乎是管道将整个文件保留在第一个管道或第二个调用的内存中。任何人都可以帮忙吗?