2015-06-15 63 views
3

我想记录时间的东西。一般的代码看起来像这样:nodejs中的'console.time'是同步还是异步?

var stream = db.call.stream(); 
stream.on('data', function() { 
    if (first) { 
     console.time('doSomething'); 
    } 
    stream.pause(); 
    doSomethingWithData(data); 
    if (stopCondition) { 
     console.timeEnd('doSomething'); 
     done(); 
    } else { 
     stream.resume(); 
    } 
}); 

我想知道如果调用console.time阻止或异步?我无法在文档中找到它。

+2

如果console.time是异步的,则无法测量console.time和console.timeEnd之间的时间,因为无法知道代码段执行的开始时间。所以它必然同步 – eroak

+0

@Fieldset好点! – codehitman

回答

5

console.time and console.timeEnd的源代码,

​​

他们只是对存储在标签的起始时间,计算自定时标签经过的时间。

它们不会异步执行任何操作。

注意:在node.js中,如果函数是异步的,它将接受callback作为其中一个参数。

相关问题