2

我收到此错误:

Error: accept EMFILE
at errnoException (net.js:769:11)
at TCP.onconnection (net.js:1017:24)

从 node.js 应用程序。我可以得到一个调用 TCP.onconnection 的代码的行号吗?

4

2 回答 2

4

不,你不能,因为你的代码没有调用TCP.onconnection. 那是一个事件处理程序,所以一个事件正在触发它。这是基于事件的编程难以调试的原因之一。

不过,我认为您会很幸运地了解该错误的含义。一些搜索显示您正在达到文件描述符限制,这可能会增加(但这将取决于操作系统,所以如果没有更多信息,我无法告诉您如何)。

于 2013-03-20T21:06:52.143 回答
1

当系统中打开的文件过多时会发生 EMFILE。要增加此限制,请查看Linux 增加打开文件/文件描述符 (FD) 的最大数量或修改您的代码,以在其工作完成时关闭打开的连接。或者如果您需要打开太多文件,只需将此值增加到合理的大小。

于 2013-03-20T21:55:37.797 回答