Delegate RateLimitLeaseAcquirer

Namespace
Kevlar.Extensions.RateLimiting
Assembly
Kevlar.Extensions.RateLimiting.dll

Acquires a rate-limit lease for one shield execution.

public delegate ValueTask<RateLimitLease> RateLimitLeaseAcquirer(int permitCount, KevlarContext context)

Parameters

permitCount int

The configured number of permits requested per execution.

context KevlarContext

The current execution context, including its cancellation token.

Returns

ValueTask<RateLimitLease>

The acquired or rejected lease. The adapter disposes it exactly once.

Constructors

RateLimitLeaseAcquirer(object, nint)

public RateLimitLeaseAcquirer(object @object, nint method)

Parameters

object object
method nint

Methods

BeginInvoke(int, KevlarContext, AsyncCallback, object)

public virtual IAsyncResult BeginInvoke(int permitCount, KevlarContext context, AsyncCallback callback, object @object)

Parameters

permitCount int
context KevlarContext
callback AsyncCallback
object object

Returns

IAsyncResult

EndInvoke(IAsyncResult)

public virtual ValueTask<RateLimitLease> EndInvoke(IAsyncResult result)

Parameters

result IAsyncResult

Returns

ValueTask<RateLimitLease>

Invoke(int, KevlarContext)

public virtual ValueTask<RateLimitLease> Invoke(int permitCount, KevlarContext context)

Parameters

permitCount int
context KevlarContext

Returns

ValueTask<RateLimitLease>