Node.jserror handling保证与net.createConnection

我想知道,如果Node.js提供任何保证,error handling程序将捕获代码中的所有错误,如下所示:

var c = net.createConnection(port, host); c.on('error', function (e) { ... }); 

我不得不处理在调用createConnection和设置error handling程序的语句之间插入其他语句的代码,这有时会导致createConnection内部的错误渗透到顶层(可能是因为这些错误有时在错误发生之前发生处理程序已经设置)。 但是,除非我错过了一些东西,原则上这可能发生在上面的代码中 – 这不太可能。 有什么方法可以确保createConnection中发生的所有错误都会传递给error handling程序吗?

只有在节点存在错误时才会发生。

JavaScript是单线程的,在附加事件处理程序和创build连接之间,进程通常不会中断。

没有错误生成的JavaScript土地将被该代码无法捕获。

所以如果在节点中有一个错误,那么你的代码可能会有一些错误无法捕捉到。 如果你在背景中运行一些不好的低级代码,可能会导致一些你的代码无法捕捉的错误。

但在正常使用情况下,您的代码是“线程安全”。 在出现任何错误之前绑定事件处理程序,因为您的代码被阻止,并且没有任何操作可以抛出错