3

我正在尝试使用retry语句存储块,但出现语法错误:Invalid retry. 我如何正确存储它?

retries = 3
proc = Proc.new do
  if retries > 0
    p " Retries left: #{retries}"
    retries -= 1
    retry
  end
end
begin
  ...
rescue SomeErrorOne
  proc.call
rescue SomeErrorTwo
  proc.call
end
4

1 回答 1

3

尝试将 更改retryredo。我认为在 Ruby 1.9 中进行了一些更改,因为该retry关键字被滥用了。

可以在这里找到不同之处:http ://rubyquicktips.com/post/1122838559/redo-vs-retry查看底部的评论。

于 2013-11-12T10:44:44.473 回答