delphi 异常后重试

Retry after exception in delphi

我有一个问题要问你。

我有一段代码如下

try
 //some code that fails
except
 // code to retry the code that fails
end 

现在我想重试异常后的失败代码。在 Delphi 中可以这样做吗? 所以你有一种在异常发生后重试 3/4 次的循环。如果它在第 4 次没有工作,则给出错误消息。

我经常使用这个结构:

FOR I:=1 TO Retries DO BEGIN
  TRY
    <Code>
    BREAK
  EXCEPT
    <Report/Log failure, prepare for next iteration>
  END
END

这样,它会循环“重试”次数,但如果在某个时候成功,它就会跳出循环。

EXCEPT 部分应为重试循环的下一次迭代做准备(如删除由失败代码创建的任何文件等),可能由

保护
IF I=Retries THEN
  RAISE
ELSE BEGIN
  <Report/Log failure, prepare for next iteration>
END