我正在运行下面的代码但是我的堆栈大小已超出,我无法理解为什么。该代码适用于较少的项目(最多1000个测试)。当我尝试使用大量项目时,我总是会收到此错误。我正在使用Parse sdk btw。
d:\GitHub\ExampleProj\node_modules\parse\build\parse-latest.js:785
each(slice.call(arguments, 1), function(source) {
^
RangeError: Maximum call stack size exceeded
有什么想法吗?这是代码的干净版本
var q = async.queue(function (user, callback) {
user.signUp(null, {
success: function(user) {
callback();
},
error: function(user, error) {
callback();
}
});
}, 100);
q.drain = function() {
console.log('All items have been processed');
};
// ~17000 items
for(var i=0; i < sqlFiles.length; i++) {
var user = {
...
};
q.push(user);
}
答案 0 :(得分:5)
节点堆栈大小类似于使用v8引擎的浏览器中的堆栈大小,它类似于25 000。 但您可以使用控制台参数来增加它:
node --stack-size=1000000000 file.js