泵和管道有什么区别?

时间:2018-03-16 12:14:30

标签: javascript node.js stream

有经验的节点js开发人员经常建议使用npm pump模块而不是节点Stream.pipe方法。

为什么我会使用一个而不是另一个?

similar looking question in SO,但已有6岁。它的节点已经9.8.0了,我想从那时起事情发生了变化。

2 个答案:

答案 0 :(得分:2)

TL; DR:使用pipeline

对于Node.js 10.x或更高版本,引入了管道来代替泵。这是一种模块方法,可在流之间转发错误并正确清理,并在流完成时提供回调。

但是pipepipeline有什么区别? 您可以找到我的答案here

答案 1 :(得分:0)

来自pump自述文件:

  

如果source.pipe(dest)发出关闭或错误,则使用标准source dest时不会被销毁。您也无法提供回调以告知管道何时完成。

相关问题