EIO 错误代码是什么意思?

Hon*_*gli 7 sockets

我正在维护用户可以在其上部署 Web 应用程序的 Web 服务器软件。Web 应用程序作为单独的进程运行:Web 服务器启动 Web 应用程序进程,将 HTTP 请求转发到 Web 应用程序,并将 Web 应用程序的响应转发回 HTTP 客户端。Web 服务器和 Web 应用程序之间的通信通过套接字进行。

一些用户(= Web 应用程序开发人员)报告说,当他们写入将 Web 应用程序连接到 Web 服务器的套接字时,他们偶尔会遇到神秘的 EIO 错误(至少,他们认为是写入套接字导致了错误)。其他一些人报告说,他们在向 STDERR(重定向到日志文件)写入内容时也会遇到此错误。重新启动 Web 服务器和 Web 应用程序可以在短时间内“修复”此问题。

EIO 是什么意思? 我知道手册上写着“输入/输出错误”,但这个描述非常模糊。什么情况下会发生?它与 ECONNREFUSED/EPIPE/ENOTCONN/etc 有何不同?

Hon*_*gli 6

嗯,显然,当尝试写入断开连接的控制台设备时,可能会发生 EIO。

  • 错误:我在 macOS 10.14 上遇到了这个错误;别问我怎么... (4认同)