Errno
模块Errno
Ruby异常对象是的子类Exception
。但是,操作系统通常使用普通整数报告错误。模块Errno
是动态创建的,以将这些操作系统错误映射到Ruby类,每个错误号都生成它自己的子类SystemCallError
。由于子类是在模块中创建的Errno
,因此它的名称将会启动Errno::
。
这些Errno::
类的名字取决于Ruby运行的环境。在典型的UNIX或Windows平台上,有Errno
类,如Errno::EACCES
,Errno::EAGAIN
,Errno::EINTR
,等。
对应于特定错误
的整数操作系统错误
编号可用作类常量Errno::
错误
::Errno
。
Errno::EACCES::Errno #=> 13
Errno::EAGAIN::Errno #=> 11
Errno::EINTR::Errno #=> 4
您特定平台上的操作系统错误的完整列表可作为Errno的常量使用。
Errno.constants #=> :E2BIG, :EACCES, :EADDRINUSE, :EADDRNOTAVAIL, ...
系统调用错误模块由webrick用于跨平台兼容性。
EPROTO
协议错误
ECONNRESET
远程主机重置连接请求
ECONNABORTED
客户端在服务器接受客户端请求的连接之前发送TCP重置(RST)。