我最近开始使用node.js.它引用了node.js的异步行为可以用三种方式使用events
,stream
,callback
。node.js回调如何异步?
活动和emit,pipe
事件使它真正异步流工作,但如何回调异步的,因为它,除非使用process.nextTick()函数返回之前执行。
活动:
event.on('data',function(data){
});
回调:
function(data,cb){
// do something with "data"
cb();
return;
}
您可以非常合理的回报的东西与异步操作,例如你可以返回'this'以允许方法链接。 – lanzz
@lanzz:尽管听起来像是一个很好的比赛条件。 –
@MichaelBorgwardt我认为在事件驱动的单线程代码中会导致竞争条件是非常麻烦的。另外,object.method1()。method2()比object.method1()更容易出现竞争条件。 object.method2()'? – lanzz