Less checks and less misses? Performance and stability? Oh my.

This commit is contained in:
Zixaphir 2014-01-11 14:39:14 -07:00
parent 6bafef092b
commit bf80874f9f
3 changed files with 23 additions and 16 deletions

View File

@ -13108,18 +13108,21 @@
cbs = klass.callbacks;
fn = function() {
var node;
node = nodes[i++];
if (!(node = nodes[i++])) {
return false;
}
cbs.execute(node);
return i % 25;
};
softTask = function() {
while (fn()) {
if (len === i) {
if (cb) {
cb();
}
return;
continue;
}
if (len === i) {
if (cb) {
cb();
}
return;
}
return setTimeout(softTask, 0);
};

View File

@ -13085,18 +13085,21 @@
cbs = klass.callbacks;
fn = function() {
var node;
node = nodes[i++];
if (!(node = nodes[i++])) {
return false;
}
cbs.execute(node);
return i % 25;
};
softTask = function() {
while (fn()) {
if (len === i) {
if (cb) {
cb();
}
return;
continue;
}
if (len === i) {
if (cb) {
cb();
}
return;
}
return setTimeout(softTask, 0);
};

View File

@ -182,15 +182,16 @@ Main =
cbs = klass.callbacks
fn = ->
node = nodes[i++]
return false unless node = nodes[i++]
cbs.execute node
i % 25
softTask = ->
while fn()
if len is i
cb() if cb
return
continue
if len is i
cb() if cb
return
setTimeout softTask, 0
len = nodes.length