var fs = require('fs');
function a(type){
fs.readFile('./abc.txt',(err,data)=>{
console.log('111111111');
console.log(type*3);
})
console.log('44444444');
}
a(4);
fs.readFile('./xyz.txt',(err,data)=>{
console.log('22222222222');
})
function a(type){
fs.readFile('./abc.txt',(err,data)=>{
console.log('111111111');
console.log(type*3);
})
console.log('44444444');
}
a(4);
fs.readFile('./xyz.txt',(err,data)=>{
console.log('22222222222');
})
console.log('3333333333');
一个例子,abc文档有2M,xyz为空文档
最后的运行结果为
44444
33333
22222
11111
12
callback函数会进入轮询机制,非callback的部分顺序快速执行,但是当轮询发现有一个callback的返回值得到后,会立刻插入现在顺序执行的行列去执行callback。不论谁先进入轮询机制都是以谁先得到返回值为准
注意:返回值获得以后运行的callback只包含函数内的内容