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
permitCountintThe configured number of permits requested per execution.
contextKevlarContextThe 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
Methods
BeginInvoke(int, KevlarContext, AsyncCallback, object)
public virtual IAsyncResult BeginInvoke(int permitCount, KevlarContext context, AsyncCallback callback, object @object)
Parameters
permitCountintcontextKevlarContextcallbackAsyncCallbackobjectobject
Returns
EndInvoke(IAsyncResult)
public virtual ValueTask<RateLimitLease> EndInvoke(IAsyncResult result)
Parameters
resultIAsyncResult
Returns
Invoke(int, KevlarContext)
public virtual ValueTask<RateLimitLease> Invoke(int permitCount, KevlarContext context)
Parameters
permitCountintcontextKevlarContext