在Ruby中捕获异常而不是StandardError,并重新引发它

时间:2015-10-13 15:34:20

标签: ruby

我们不应该做strongly advised

rescue Exception

但至少使用:

rescue StandardError

因为否则,我们也可能会捕获(例如)旨在(合法地)终止我们程序的信号。

但是怎么样

... 
rescue Exception => e
  begin # Just in case I get another exception when writing the log
    mylogfile.puts("Exception #{e} occured")
  rescue Exception
  end
  raise e
end
...

这还应该被视为危险吗?毕竟,我正在重新提出同样的异常,而且我在我的日志中有一些证据表明发生了什么。

0 个答案:

没有答案