2
async.waterfall(
  [
  function(cb){
    //do some stuff and then never call cb leaving the async waterfall unfinished
  },...],
  function(err,result){
     //we only get here if the cb is called above and it never is
  }
)

这有什么坏处吗?我意识到它没有使用设计的方法,但我刚刚找到了一堆我正在维护的代码(由不再被人大喊大叫的人编写),我担心这实际上可能会使事情陷入困境。如果这是在受到严重打击的服务器上运行,它会产生问题吗?

4

1 回答 1

2

您需要回调最终函数,否则它将不会返回其调用代码。或者将回调嵌套在彼此内部或使用承诺。如果您不返回回调,则事件循环将被阻止。

于 2015-10-29T08:51:52.477 回答