简单的东西,我需要有一种方法来重试工作而不提高异常。我知道我可以用类似的东西
def perform
if stuff_happening
perform_in(2.min)
return
end
end
它很好,但有一个问题:重试计数。可能,每次有stuff_happening,这个工作将无限期地保持计划?有没有办法确保它只安排固定次数然后停止?
旁注:我们在Ruby中使用2个空格进行缩进。
您需要通过以下状态(已经发生的重试次数):
def perform(attempts_left = 10)
if stuff_happening && attempts_left > 0
perform_in(2.min, attempts_left - 1)
return
end
end