我在退出或退出时设法做“某事”(比如删除文件等)!从Object调用。 通过更改方法退出并退出!在Object类中。 (at_exit太不可靠了)
但是如果出现NameError等错误,那么“某事”就永远不会执行。
是否有办法,所以如果出现错误,我可以制作仍然执行的“东西”。 (必要时可能出现任何错误)。
类似at_exit,但适用于所有错误
提前感谢您的帮助。并原谅我,如果已经有问题要求这个。 在问这里之前我经常搜索。一无所获。
编辑:我不知道代码的原始作者放置方法的位置。因为原作者从作者用于启动器的exe程序中的dll文件加载它。 (我只能在原始代码发生后进行编辑......)。所以我认为我需要另一种方法...但我设法解决我的问题...通过在其他地方发送数据到原始对象的开始救援。我过滤数据发送并在它到达主程序之前抛出我自己的错误...所以我想这也有效。
答案 0 :(得分:1)
借用不同主题的答案,并且明确地按照Marek所评论的方式,这就是你应该如何处理Ruby中的错误:
begin
# something which might raise an exception
rescue SomeExceptionClass => some_variable
# code that deals with some exception
rescue SomeOtherException => some_other_variable
# code that deals with some other exception
else
# code that runs only if *no* exception was raised
ensure
# ensure that this code always runs, no matter what
end