背景故事,请阅读:https://medium.com/code-adventures/4ba9e7f3e52b
TJ说节点失败是因为:
有人可以告知TJ提到的问题吗?例如,我从来没有看到回调被双重执行的问题.它会在什么条件下发生?
编辑对于那些投票结束的人: 如果你不知道TJ是谁,他将负责大部分的npm模块.所以这不是一个不知情的用户"闲置"咆哮.他的离开将极大地伤害nodejs,这个问题试图得到批评的具体细节的答案.我从来没有看到这些问题.你呢?
vku*_*kin 13
1:当你在一个函数中包装一个流时会发生:
function doSomething (callback) {
var stream = createStream();
stream.resume();
stream.on('end', callback);
stream.on('error', callback);
}
Run Code Online (Sandbox Code Playgroud)
那么,如果end发生火灾,然后error开火呢?
2:同样的事情,如果什么都没有发射(stream.resume例如删除)?这显然是函数中的一个错误,但你看到的只是挂起的东西.
4:你天真地挂钩一些异步函数error从发射器发出事件,然后当错误发生时,监听器试图破坏发射器,导致另一个error事件并最终进入无限循环.
5,6,7:每个没有error监听器的发射器都可能导致应用程序崩溃.您有两种选择:尝试了解可省略的地方或在任何地方明确添加它们.
8:值得商榷.TJ是协同程序的支持者,所以这只是他的观点.
| 归档时间: |
|
| 查看次数: |
3368 次 |
| 最近记录: |