Compartilhar via


SlidingWindowRateLimiter Classe

Definição

RateLimiter implementação que reabastece contadores de permissão periodicamente em vez de por meio de um mecanismo de versão.

public sealed class SlidingWindowRateLimiter : System.Threading.RateLimiting.ReplenishingRateLimiter
type SlidingWindowRateLimiter = class
    inherit ReplenishingRateLimiter
Public NotInheritable Class SlidingWindowRateLimiter
Inherits ReplenishingRateLimiter
Herança
SlidingWindowRateLimiter

Construtores

SlidingWindowRateLimiter(SlidingWindowRateLimiterOptions)

Inicializa o SlidingWindowRateLimiter.

Propriedades

IdleDuration

Especifica quanto tempo o RateLimiter tem todas as licenças disponíveis. Usado por gerentes do RateLimiter que podem querer limpo RateLimiters não utilizados.

IsAutoReplenishing

Especifica se o ReplenishingRateLimiter está reabastecendo automaticamente seus tokens ou se espera que uma fonte externa chame TryReplenish()regularmente .

ReplenishmentPeriod

Especifica com que frequência os ReplenishingRateLimiter tokens serão reabastecidos. Se IsAutoReplenishing for false , essa é a frequência com TryReplenish() que deve ser chamado.

Métodos

AcquireAsync(Int32, CancellationToken)

Aguarde até que as licenças solicitadas estejam disponíveis ou as licenças não possam mais ser adquiridas.

(Herdado de RateLimiter)
AcquireAsyncCore(Int32, CancellationToken)

Método que RateLimiter as implementações implementam para AcquireAsync(Int32, CancellationToken).

(Herdado de RateLimiter)
AttemptAcquire(Int32)

Tentativa síncrona rápida de adquirir licenças.

(Herdado de RateLimiter)
AttemptAcquireCore(Int32)

Método que RateLimiter as implementações implementam para AttemptAcquire(Int32).

(Herdado de RateLimiter)
Dispose()

Descarta o RateLimiter. Isso conclui todas as aquisições na fila com uma concessão com falha.

(Herdado de RateLimiter)
Dispose(Boolean)

Descarte o método para implementações a serem gravadas.

(Herdado de RateLimiter)
DisposeAsync()

Descarta o RateLimiter de forma assíncrona.

(Herdado de RateLimiter)
DisposeAsyncCore()

Método DisposeAsync para implementações a serem gravadas.

(Herdado de RateLimiter)
GetStatistics()

Obtém uma instantâneo das RateLimiter estatísticas, se disponível.

TryReplenish()

Tenta repor contadores de solicitação em uma janela.

Aplica-se a