It occurs to me that Array.shift() is probably slow.
This commit is contained in:
parent
31e409f361
commit
073887e515
@ -12578,18 +12578,19 @@
|
||||
}
|
||||
},
|
||||
callbackNodesDB: function(klass, nodes, cb) {
|
||||
var callbacks, errors, len, softTask;
|
||||
var callbacks, errors, i, len, softTask;
|
||||
errors = null;
|
||||
len = 0;
|
||||
i = 0;
|
||||
callbacks = klass.callbacks;
|
||||
softTask = function() {
|
||||
var node;
|
||||
node = nodes.shift();
|
||||
node = nodes[i++];
|
||||
callbacks.execute(node);
|
||||
if (!--len && cb) {
|
||||
if (len === i && cb) {
|
||||
return cb();
|
||||
}
|
||||
if (!(len % 7)) {
|
||||
if (!(i % 7)) {
|
||||
return setTimeout(softTask, 0);
|
||||
} else {
|
||||
return softTask();
|
||||
|
||||
@ -12552,18 +12552,19 @@
|
||||
}
|
||||
},
|
||||
callbackNodesDB: function(klass, nodes, cb) {
|
||||
var callbacks, errors, len, softTask;
|
||||
var callbacks, errors, i, len, softTask;
|
||||
errors = null;
|
||||
len = 0;
|
||||
i = 0;
|
||||
callbacks = klass.callbacks;
|
||||
softTask = function() {
|
||||
var node;
|
||||
node = nodes.shift();
|
||||
node = nodes[i++];
|
||||
callbacks.execute(node);
|
||||
if (!--len && cb) {
|
||||
if (len === i && cb) {
|
||||
return cb();
|
||||
}
|
||||
if (!(len % 7)) {
|
||||
if (!(i % 7)) {
|
||||
return setTimeout(softTask, 0);
|
||||
} else {
|
||||
return softTask();
|
||||
|
||||
@ -238,14 +238,15 @@ Main =
|
||||
callbackNodesDB: (klass, nodes, cb) ->
|
||||
errors = null
|
||||
len = 0
|
||||
i = 0
|
||||
|
||||
{callbacks} = klass
|
||||
|
||||
softTask = ->
|
||||
node = nodes.shift()
|
||||
node = nodes[i++]
|
||||
callbacks.execute node
|
||||
return cb() if not --len and cb
|
||||
unless len % 7
|
||||
return cb() if len is i and cb
|
||||
unless i % 7
|
||||
setTimeout softTask, 0
|
||||
else
|
||||
softTask()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user