System.Threading.RateLimiting.RateLimiter
Represents a limiter type that users interact with to determine if an operation can proceed.
namespace System.Threading.RateLimiting
{
public abstract class RateLimiter : IAsyncDisposable, IDisposable
{
public abstract TimeSpan? IdleDuration { get; }
public static RateLimiter CreateChained(params RateLimiter[] limiters);
public abstract RateLimiterStatistics GetStatistics();
public RateLimitLease AttemptAcquire(int permitCount = 1);
protected abstract RateLimitLease AttemptAcquireCore(int permitCount);
public ValueTask<RateLimitLease> AcquireAsync(int permitCount = 1, CancellationToken cancellationToken = default(CancellationToken));
protected abstract ValueTask<RateLimitLease> AcquireAsyncCore(int permitCount, CancellationToken cancellationToken);
protected virtual void Dispose(bool disposing);
public void Dispose();
protected virtual ValueTask DisposeAsyncCore();
public ValueTask DisposeAsync();
protected RateLimiter();
}
}