Share via


ReplenishingRateLimiter Class

Definition

Abstraction that specifies that the RateLimiter implementation is capable of replenishing tokens.

public abstract class ReplenishingRateLimiter : System.Threading.RateLimiting.RateLimiter
type ReplenishingRateLimiter = class
    inherit RateLimiter
Public MustInherit Class ReplenishingRateLimiter
Inherits RateLimiter
Inheritance
ReplenishingRateLimiter
Derived

Constructors

ReplenishingRateLimiter()

Properties

IdleDuration

Specifies how long the RateLimiter has had all permits available. Used by RateLimiter managers that may want to clean up unused RateLimiters.

(Inherited from RateLimiter)
IsAutoReplenishing

Specifies if the ReplenishingRateLimiter is automatically replenishing its tokens or if it expects an external source to regularly call TryReplenish().

ReplenishmentPeriod

Specifies how often the ReplenishingRateLimiter will replenish tokens. If IsAutoReplenishing is false then this is how often TryReplenish() should be called.

Methods

AcquireAsync(Int32, CancellationToken)

Wait until the requested permits are available or permits can no longer be acquired.

(Inherited from RateLimiter)
AcquireAsyncCore(Int32, CancellationToken)

Method that RateLimiter implementations implement for AcquireAsync(Int32, CancellationToken).

(Inherited from RateLimiter)
AttemptAcquire(Int32)

Fast synchronous attempt to acquire permits.

(Inherited from RateLimiter)
AttemptAcquireCore(Int32)

Method that RateLimiter implementations implement for AttemptAcquire(Int32).

(Inherited from RateLimiter)
Dispose()

Disposes the RateLimiter. This completes any queued acquires with a failed lease.

(Inherited from RateLimiter)
Dispose(Boolean)

Dispose method for implementations to write.

(Inherited from RateLimiter)
DisposeAsync()

Disposes the RateLimiter asynchronously.

(Inherited from RateLimiter)
DisposeAsyncCore()

DisposeAsync method for implementations to write.

(Inherited from RateLimiter)
GetStatistics()

Gets a snapshot of the RateLimiter statistics if available.

(Inherited from RateLimiter)
TryReplenish()

Attempts to replenish tokens.

Applies to