我已经定义了Polly策略,以便在发生异常时执行重试。该策略定义为
policy = Policy.Handle<ReconnectException>().Retry(retryCount);
调用我的方法
policy.Execute(()=>SendMessageWithRetryPolicy(message));如何执行重置,以便如果我的MaxRetryCount设置为5,并且消息已在第3步成功取消,我将再次执行第5步?
提前感谢
发布于 2019-09-06 00:47:32
您不需要通过Polly重试策略重置两次调用之间的重试计数。通过该策略的每个单独执行都有权获得该策略上配置的全部重试次数。
如果您配置:
policy = Policy.Handle<ReconnectException>().Retry(retryCount); // where retryCount == 5然后通过该策略执行每一次:
policy.Execute(()=>SendMessageWithRetryPolicy(message));将有权进行6次尝试(1次初始尝试+5次重试)。如果第一次执行使用3次重试,则下一次执行仍有权进行6次重试(1次初始尝试+5次重试)。
https://stackoverflow.com/questions/57808421
复制相似问题