我的应用程序(Ruby 1.9.2)可能会引发不同的异常,包括网络连接中断。我rescue Exception => e
,然后case/when
以不同的方式处理它们,但有几个错误直接通过我的案例else
。
rescue Exception => e
p e.class
case e.class
when Errno::ECONNRESET
p 1
when Errno::ECONNRESET,Errno::ECONNABORTED,Errno::ETIMEDOUT
p 2
else
p 3
end
end
印刷:
Errno::ECONNRESET
3