你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

RetryPolicy 类

定义

表示可以重写的策略,以自定义是否重试请求以及重试前等待的时间。

public class RetryPolicy : Azure.Core.Pipeline.HttpPipelinePolicy
type RetryPolicy = class
    inherit HttpPipelinePolicy
Public Class RetryPolicy
Inherits HttpPipelinePolicy
继承

构造函数

RetryPolicy(Int32, DelayStrategy)

初始化 RetryPolicy 类的新实例。

方法

OnRequestSent(HttpMessage)

可以重写此方法,以引入在通过管道发送请求并将控制权返回到重试策略后运行的逻辑。 此方法将仅针对同步方法调用。

OnRequestSentAsync(HttpMessage)

可以重写此方法,以引入在通过管道发送请求并将控制权返回到重试策略后运行的逻辑。 将仅为异步方法调用此方法。

OnSendingRequest(HttpMessage)

可以重写此方法,以在发送每个请求尝试之前引入逻辑。 即使第一次尝试,此操作也会运行。 此方法将仅针对同步方法调用。

OnSendingRequestAsync(HttpMessage)

可以重写此方法,以引入在发送请求之前运行的逻辑。 即使第一次尝试,此操作也会运行。 将仅为异步方法调用此方法。

Process(HttpMessage, ReadOnlyMemory<HttpPipelinePolicy>)

可以重写此方法以完全控制重试策略。 如果此被重写且未调用基方法,则实现者负责填充 ProcessingContext 属性。 此方法将仅针对同步方法调用。

ProcessAsync(HttpMessage, ReadOnlyMemory<HttpPipelinePolicy>)

可以重写此方法以完全控制重试策略。 如果此被重写且未调用基方法,则实现者负责填充 ProcessingContext 属性。 将仅为异步方法调用此方法。

ShouldRetry(HttpMessage, Exception)

可以重写此方法以控制是否应重试请求。 如果 为 true,或者从任何后续管道策略或传输中引发异常,则将针对任何响应 IsError 调用它。 此方法将仅针对同步方法调用。

ShouldRetryAsync(HttpMessage, Exception)

可以重写此方法以控制是否应重试请求。 如果 为 true,或者从任何后续管道策略或传输中引发异常,则将针对任何响应 IsError 调用它。 将仅为异步方法调用此方法。

适用于