WBE_Praktikum_5/code/async/promise-priority.js

29 lines
1.0 KiB
JavaScript

//
// Priorities in the event loop
//
Promise.resolve().then(() => console.log('promise resolved'))
setImmediate(() => console.log('set immediate'))
process.nextTick(() => console.log('next tick'))
setTimeout(() => console.log('set timeout'), 0)
Promise.resolve().then(() => console.log('promise1 resolved'))
Promise.resolve().then(() => console.log('promise2 resolved'))
Promise.resolve().then(() => {
console.log('promise3 resolved')
process.nextTick(() => console.log('next tick inside promise resolve handler'))
})
Promise.resolve().then(() => console.log('promise4 resolved'))
Promise.resolve().then(() => console.log('promise5 resolved'))
setImmediate(() => console.log('set immediate1'))
setImmediate(() => console.log('set immediate2'))
process.nextTick(() => console.log('next tick1'))
process.nextTick(() => console.log('next tick2'))
process.nextTick(() => console.log('next tick3'))
setTimeout(() => console.log('set timeout'), 0)
setImmediate(() => console.log('set immediate3'))
setImmediate(() => console.log('set immediate4'))