Skip to content

Instantly share code, notes, and snippets.

@mohankumar-i2i
Created December 22, 2019 18:56
Show Gist options
  • Save mohankumar-i2i/8268840f2d5d69ccd7071f84b40af81a to your computer and use it in GitHub Desktop.
Save mohankumar-i2i/8268840f2d5d69ccd7071f84b40af81a to your computer and use it in GitHub Desktop.
const https = require('https');
const crypto = require('crypto');
const fs = require('fs');
const start = Date.now();
setImmediate(() => console.log('this is set immediate 1'));
setImmediate(() => console.log('this is set immediate 2'));
setImmediate(() => console.log('this is set immediate 3'));
setTimeout(() => console.log('this is set timeout 1'), 0);
setTimeout(() => {
console.log('this is set timeout 2');
process.nextTick(() => console.log('this is process.nextTick added inside setTimeout'));
}, 0);
setTimeout(() => console.log('this is set timeout 3'), 0);
setTimeout(() => console.log('this is set timeout 4'), 0);
setTimeout(() => console.log('this is set timeout 5'), 0);
process.nextTick(() => console.log('this is process.nextTick 1'));
process.nextTick(() => {
process.nextTick(console.log.bind(console, 'this is the inner next tick inside next tick'));
});
process.nextTick(() => console.log('this is process.nextTick 2'));
process.nextTick(() => console.log('this is process.nextTick 3'));
process.nextTick(() => console.log('this is process.nextTick 4'));
function doRequest() {
https
.request('https://www.google.com', res => {
res.on('data', () => {});
res.on('end', () => {
console.log(Date.now() - start);
});
})
.end();
}
function doHash() {
crypto.pbkdf2('a', 'b', 100000, 512, 'sha512', () => {
console.log('Hash:', Date.now() - start);
});
}
doRequest();
fs.readFile('multi', () => {
console.log('FS:', Date.now() - start);
setTimeout(() => {
console.log('timeout')
}, 0);
setImmediate(() => {
console.log('immediate')
})
});
doHash();
doHash();
doHash();
doHash();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment