RetryPolicy Class
Provides the base implementation of the retry mechanism for unreliable actions and transient conditions.
Namespace: Microsoft.WindowsAzure.Common.TransientFaultHandling
Assembly: Microsoft.WindowsAzure.Common (in Microsoft.WindowsAzure.Common.dll)
Inheritance Hierarchy
System.Object
Microsoft.WindowsAzure.Common.TransientFaultHandling.RetryPolicy
Microsoft.WindowsAzure.Common.TransientFaultHandling.RetryPolicy<T>
Syntax
public class RetryPolicy
public ref class RetryPolicy
type RetryPolicy = class end
Public Class RetryPolicy
Constructors
Name | Description | |
---|---|---|
RetryPolicy(ITransientErrorDetectionStrategy, Int32) | Initializes a new instance of the RetryPolicy class with the specified number of retry attempts and default fixed time interval between retries. |
|
RetryPolicy(ITransientErrorDetectionStrategy, Int32, TimeSpan) | Initializes a new instance of the RetryPolicy class with the specified number of retry attempts and fixed time interval between retries. |
|
RetryPolicy(ITransientErrorDetectionStrategy, Int32, TimeSpan, TimeSpan) | Initializes a new instance of the RetryPolicy class with the specified number of retry attempts and parameters defining the progressive delay between retries. |
|
RetryPolicy(ITransientErrorDetectionStrategy, Int32, TimeSpan, TimeSpan, TimeSpan) | Initializes a new instance of the RetryPolicy class with the specified number of retry attempts and backoff parameters for calculating the exponential delay between retries. |
|
RetryPolicy(ITransientErrorDetectionStrategy, RetryStrategy) | Initializes a new instance of the RetryPolicy class with the specified number of retry attempts and parameters defining the progressive delay between retries. |
Properties
Name | Description | |
---|---|---|
DefaultExponential | Returns a default policy that implements a random exponential retry interval configured with the default FixedInterval retry strategy. The default retry policy treats all caught exceptions as transient errors. |
|
DefaultFixed | Returns a default policy that implements a fixed retry interval configured with the default FixedInterval retry strategy. The default retry policy treats all caught exceptions as transient errors. |
|
DefaultProgressive | Returns a default policy that implements a progressive retry interval configured with the default Incremental retry strategy. The default retry policy treats all caught exceptions as transient errors. |
|
ErrorDetectionStrategy | Gets the instance of the error detection strategy. |
|
NoRetry | Returns a default policy that performs no retries, but invokes the action only once. |
|
RetryStrategy | Gets the retry strategy. |
Methods
Name | Description | |
---|---|---|
Equals(Object) | (Inherited from Object.) |
|
ExecuteAction(Action) | Repetitively executes the specified action while it satisfies the current retry policy. |
|
ExecuteAction<TResult>(Func<TResult>) | Repetitively executes the specified action while it satisfies the current retry policy. |
|
ExecuteAsync(Func<Task>) | Repetitively executes the specified asynchronous task while it satisfies the current retry policy. |
|
ExecuteAsync(Func<Task>, CancellationToken) | Repetitively executes the specified asynchronous task while it satisfies the current retry policy. |
|
ExecuteAsync<TResult>(Func<Task<TResult>>) | Repeatedly executes the specified asynchronous task while it satisfies the current retry policy. |
|
ExecuteAsync<TResult>(Func<Task<TResult>>, CancellationToken) | Repeatedly executes the specified asynchronous task while it satisfies the current retry policy. |
|
Finalize() | (Inherited from Object.) |
|
GetHashCode() | (Inherited from Object.) |
|
GetType() | (Inherited from Object.) |
|
MemberwiseClone() | (Inherited from Object.) |
|
OnRetrying(Int32, Exception, TimeSpan) | Notifies the subscribers whenever a retry condition is encountered. |
|
ToString() | (Inherited from Object.) |
Events
Name | Description | |
---|---|---|
Retrying | An instance of a callback delegate that will be invoked whenever a retry condition is encountered. |
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
See Also
Microsoft.WindowsAzure.Common.TransientFaultHandling Namespace
Return to top