我定义了一个 Polly 策略,以便在发生异常时执行重试。 该策略定义为
policy = Policy.Handle<ReconnectException>().Retry(retryCount);
我用
policy.Execute(()=>SendMessageWithRetryPolicy(message));
如何执行重置,以便如果我的 MaxRetryCount 设置为 5,并且消息已成功在 3 步处解除,我又要执行 5 步?
提前致谢
您无需通过 Polly 重试策略重置调用之间的重试计数。 通过策略进行的每次单独执行都有权获得策略上配置的完整重试计数。
如果配置:
policy = Policy.Handle<ReconnectException>().Retry(retryCount); // where retryCount == 5
然后通过策略执行每次:
policy.Execute(()=>SendMessageWithRetryPolicy(message));
将有权进行 6 次尝试(1 次初始尝试 + 5 次重试(。 如果第一次执行使用 3 次重试,则下一次执行仍有权进行 6 次尝试(1 次初始尝试 + 5 次重试(。