Table of Contents

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

maxRetries int

Maximum number of retries.

delay TimeSpan

Delay between retries.

logger ILogger

Logger 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

action Func<Task<object>>
cancellationToken CancellationToken

Cancellation token.

Returns

Task<object>

A task representing the operation with a return value.

ExecuteAsync(Func<Task>, CancellationToken)

Executes an action with retry logic.

public Task ExecuteAsync(Func<Task> action, CancellationToken cancellationToken = default)

Parameters

action Func<Task>

The action to execute.

cancellationToken CancellationToken

Cancellation token.

Returns

Task

A task representing the operation.