Condividi tramite


SlidingWindowRateLimiter Classe

Definizione

RateLimiter implementazione che riempie periodicamente i contatori invece di tramite un meccanismo di rilascio.

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

Costruttori

SlidingWindowRateLimiter(SlidingWindowRateLimiterOptions)

Inizializza SlidingWindowRateLimiter.

Proprietà

IdleDuration

Specifica la durata RateLimiter di tutte le autorizzazioni disponibili. Usato dai manager RateLimiter che potrebbero voler pulire rateLimiters inutilizzati.

IsAutoReplenishing

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

ReplenishmentPeriod

Specifica la frequenza con cui verranno ReplenishingRateLimiter riforniti i token. Se IsAutoReplenishing è allora questo è false il modo in TryReplenish() cui deve essere chiamato.

Metodi

AcquireAsync(Int32, CancellationToken)

Attendere fino a quando le autorizzazioni richieste non sono più disponibili o non è più possibile acquisire.

(Ereditato da RateLimiter)
AcquireAsyncCore(Int32, CancellationToken)

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

(Ereditato da RateLimiter)
AttemptAcquire(Int32)

Tentativo sincrono rapido di acquisire le autorizzazioni.

(Ereditato da RateLimiter)
AttemptAcquireCore(Int32)

Metodo che RateLimiter implementa per AttemptAcquire(Int32).

(Ereditato da RateLimiter)
Dispose()

Elimina RateLimiter. Ciò completa eventuali acquisizioni in coda con un lease non riuscito.

(Ereditato da RateLimiter)
Dispose(Boolean)

Eliminare il metodo per le implementazioni da scrivere.

(Ereditato da RateLimiter)
DisposeAsync()

Elimina in modo asincrono RateLimiter.

(Ereditato da RateLimiter)
DisposeAsyncCore()

Metodo DisposeAsync per le implementazioni da scrivere.

(Ereditato da RateLimiter)
GetStatistics()

Ottiene uno snapshot delle RateLimiter statistiche, se disponibile.

TryReplenish()

Tenta di rifornire i contatori delle richieste in una finestra.

Si applica a