Class SimpleRetryPolicy
- Namespace
- DotCompute.Backends.Metal.Utilities
- Assembly
- DotCompute.Backends.Metal.dll
Simple implementation of retry policy for Metal operations.
public sealed class SimpleRetryPolicy : IAsyncPolicy, IAsyncPolicy<object>
- Inheritance
-
SimpleRetryPolicy
- Implements
- Inherited Members
Remarks
Initializes a new instance of the SimpleRetryPolicy class.
Constructors
SimpleRetryPolicy(int, TimeSpan, ILogger?)
Simple implementation of retry policy for Metal operations.
public SimpleRetryPolicy(int maxRetries = 3, TimeSpan delay = default, ILogger? logger = null)
Parameters
maxRetriesintMaximum number of retries.
delayTimeSpanDelay between retries.
loggerILoggerLogger for diagnostics.
Remarks
Initializes a new instance of the SimpleRetryPolicy class.
Methods
ExecuteAsync(Func<Task<object>>, CancellationToken)
Executes a function with retry logic.
public Task<object> ExecuteAsync(Func<Task<object>> action, CancellationToken cancellationToken = default)
Parameters
actionFunc<Task<object>>cancellationTokenCancellationTokenCancellation token.
Returns
ExecuteAsync(Func<Task>, CancellationToken)
Executes an action with retry logic.
public Task ExecuteAsync(Func<Task> action, CancellationToken cancellationToken = default)
Parameters
actionFunc<Task>The action to execute.
cancellationTokenCancellationTokenCancellation token.
Returns
- Task
A task representing the operation.