Condividi tramite


TokenBucketRateLimiter Classe

Definizione

RateLimiter implementazione che rifornisce periodicamente i token anziché tramite un meccanismo di rilascio.

public sealed class TokenBucketRateLimiter : System.Threading.RateLimiting.ReplenishingRateLimiter
type TokenBucketRateLimiter = class
    inherit ReplenishingRateLimiter
Public NotInheritable Class TokenBucketRateLimiter
Inherits ReplenishingRateLimiter
Ereditarietà
TokenBucketRateLimiter

Costruttori

TokenBucketRateLimiter(TokenBucketRateLimiterOptions)

Inizializza TokenBucketRateLimiter.

Proprietà

IdleDuration

Specifica per quanto tempo l'oggetto RateLimiter dispone di tutti i permessi disponibili. Usato dai manager RateLimiter che potrebbero voler pulire RateLimiters inutilizzati.

IsAutoReplenishing

Specifica se l'oggetto ReplenishingRateLimiter esegue automaticamente il rifornimento dei token o se prevede che un'origine esterna chiami TryReplenish()regolarmente .

ReplenishmentPeriod

Specifica la frequenza con cui ReplenishingRateLimiter rifornirà i token. Se IsAutoReplenishing è false allora questa è la frequenza TryReplenish() con cui deve essere chiamata.

Metodi

AcquireAsync(Int32, CancellationToken)

Attendere che i permessi richiesti siano disponibili o che i permessi non possano più essere acquisiti.

(Ereditato da RateLimiter)
AcquireAsyncCore(Int32, CancellationToken)

Metodo che RateLimiter implementa le implementazioni per AcquireAsync(Int32, CancellationToken).

(Ereditato da RateLimiter)
AttemptAcquire(Int32)

Tentativo sincrono rapido di acquisire i permessi.

(Ereditato da RateLimiter)
AttemptAcquireCore(Int32)

Metodo che RateLimiter implementa le implementazioni per AttemptAcquire(Int32).

(Ereditato da RateLimiter)
Dispose()

Elimina RateLimiter. In questo modo, tutte le acquisizioni in coda vengono completate con un lease non riuscito.

(Ereditato da RateLimiter)
Dispose(Boolean)

Eliminare il metodo per le implementazioni da scrivere.

(Ereditato da RateLimiter)
DisposeAsync()

Elimina rateLimiter in modo asincrono.

(Ereditato da RateLimiter)
DisposeAsyncCore()

Metodo DisposeAsync per le implementazioni da scrivere.

(Ereditato da RateLimiter)
GetStatistics()

Ottiene uno snapshot delle RateLimiter statistiche, se disponibili.

TryReplenish()

Tenta di ricostituire il secchio.

Si applica a