Skip to content

Instantly share code, notes, and snippets.

@jimmytuc
Forked from mmalecki/nextTick.js
Created July 23, 2017 05:31
Show Gist options
  • Save jimmytuc/3322ec89af94e63c3758d9049e701152 to your computer and use it in GitHub Desktop.
Save jimmytuc/3322ec89af94e63c3758d9049e701152 to your computer and use it in GitHub Desktop.
process.nextTick vs setTimeout(fn, 0)
for (var i = 0; i < 1024 * 1024; i++) {
process.nextTick(function () { Math.sqrt(i) } )
}

Results

Intel i7 890 @ 2.93 GHz x64, node compiled with -march=native -mtune=native:

$ time node nextTick.js 

real	0m0.344s
user	0m0.276s
sys 	0m0.067s

$ time node setTimeout.js 

real	0m9.125s
user	0m8.707s
sys 	0m0.410s

Feel free to fork and add your results!

for (var i = 0; i < 1024 * 1024; i++) {
setTimeout(function () { Math.sqrt(i) }, 0)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment