LeaseProvider<TMetadata>
Represents provider side of a lease in a distributed environment.
Represents a result of lease acquisition operation.
Represents a state of the lease.
A token that represents state of this object.
Gets a lease time-to-live.
Initializes a new instance of lease provider.
public ValueTask<AcquisitionResult<TMetadata>> AcquireAsync<TArg>(TArg arg, Func<TArg, TMetadata, CancellationToken, ValueTask<TMetadata>> updater, CancellationToken token = default)
Acquires the lease.
Acquires the lease.
Loads the state of a lease from the underlying storage.
public ValueTask<LeaseIdentity?> ReleaseAsync<TArg>(LeaseIdentity identity, TArg arg, Func<TArg, TMetadata, CancellationToken, ValueTask<TMetadata>> updater, CancellationToken token = default)
Releases the lease.
public ValueTask<LeaseIdentity?> ReleaseAsync(LeaseIdentity identity, CancellationToken token = default)
Releases the lease.
public ValueTask<AcquisitionResult<TMetadata>?> TryAcquireAsync<TArg>(TArg arg, Func<TArg, TMetadata, CancellationToken, ValueTask<TMetadata>> updater, CancellationToken token = default)
Tries to acquire the lease.
Tries to acquire the lease.
public ValueTask<AcquisitionResult<TMetadata>?> TryAcquireOrRenewAsync<TArg>(LeaseIdentity identity, TArg arg, Func<TArg, TMetadata, CancellationToken, ValueTask<TMetadata>> updater, CancellationToken token = default)
Tries to acquire or renew the lease.
public ValueTask<AcquisitionResult<TMetadata>?> TryAcquireOrRenewAsync(LeaseIdentity identity, CancellationToken token = default)
Tries to acquire or renew the lease.
public ValueTask<AcquisitionResult<TMetadata>?> TryRenewAsync<TArg>(LeaseIdentity identity, bool reacquire, TArg arg, Func<TArg, TMetadata, CancellationToken, ValueTask<TMetadata>> updater, CancellationToken token = default)
Tries to renew the lease.
public ValueTask<AcquisitionResult<TMetadata>?> TryRenewAsync(LeaseIdentity identity, bool reacquire, CancellationToken token = default)
Tries to renew the lease.
protected abstract ValueTask<bool> TryUpdateStateAsync(State<TMetadata> state, CancellationToken token)
public ValueTask<LeaseIdentity> UnsafeReleaseAsync<TArg>(TArg arg, Func<TArg, TMetadata, CancellationToken, ValueTask<TMetadata>> updater, CancellationToken token = default)
Releases the lease ungracefully.
Releases the lease ungracefully.
public ValueTask<LeaseIdentity?> UnsafeTryReleaseAsync<TArg>(TArg arg, Func<TArg, TMetadata, CancellationToken, ValueTask<TMetadata>> updater, CancellationToken token = default)
Tries to release the lease ungracefully.
Tries to release the lease ungracefully.