我正在从画布生成快照,以便稍后加入以创建视频。 fs.createWriteStream适用于242个文件,但在242之后创建任何文件时会出错。
以下是我正在使用的代码
for(var i = 0; i < frames.length; i++){
var out = fs.createWriteStream("frame-" + i +".png");
}
上面的代码完全正常,直到索引241.正好在索引242每次都给出错误
events.js:72
throw er; // Unhandled 'error' event
^
Error: EMFILE, open '~/project/app/frames/frame-242.png'
这是与OS相关的限制吗?我正在使用Mac OS。是因为我们不能打开超过有限的没有文件写:( 如何解决此问题,以获得数百个文件?
由于 Parag
答案 0 :(得分:0)
调用
out.end()
做了魔法。根据有用的社区和一些研究的建议,我发现关闭流的功能是end()