我平時做這樣的事情的陳述更好的辦法:重試拋出一個異常在vb.net
Dim Attempts = 0
Try
Retry:
<Block>
Catch
If Attempts < 3 Then
Attempts += 1
Thread.Sleep(2000)
GoTo Retry
Else
Throw
End If
End Try
這是非常糟糕的找我,但我不知道一個更好的方式正在做。
請注意,即使在應該傳遞異常的最後一次嘗試中,您也會默默捕捉所有異常。在for循環中只捕獲一個非常特定的異常(由於瞬態錯誤而引發的異常)也會更好。例如,你不想重試'ArgumentException'。 – 2010-08-19 09:15:29
但我如何拋棄最後一個異常?這是很重要的 – ariel 2010-08-19 09:16:54
好吧,我可以做「如果我= 0然後拋出」裏面的捕獲.. – ariel 2010-08-19 09:17:49