TokenBucketRateLimiter Sınıf

Tanım

RateLimiter bir yayın mekanizması yerine belirteçleri düzenli aralıklarla yenileyen uygulama.

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

Oluşturucular

TokenBucketRateLimiter(TokenBucketRateLimiterOptions)

öğesini TokenBucketRateLimiterbaşlatır.

Özellikler

IdleDuration

tüm izinlerin ne kadar süreyle RateLimiter kullanılabilir olduğunu belirtir. Kullanılmayan RateLimiter'ları temizlemek isteyebilecek RateLimiter yöneticileri tarafından kullanılır.

IsAutoReplenishing

öğesinin ReplenishingRateLimiter belirteçlerini otomatik olarak yenilediğini veya bir dış kaynağın düzenli olarak çağrısı TryReplenish()yapmasını mı beklediğini belirtir.

ReplenishmentPeriod

belirteçlerin ne sıklıkta ReplenishingRateLimiter yenileneceğini belirtir. Öyleyse IsAutoReplenishingfalse , bu sıklıkla TryReplenish() çağrılmalıdır.

Yöntemler

AcquireAsync(Int32, CancellationToken)

İstenen izinlerin kullanılabilir olmasını veya izinlerin artık alınamasını bekleyin.

(Devralındığı yer: RateLimiter)
AcquireAsyncCore(Int32, CancellationToken)

RateLimiter Uygulamaların için AcquireAsync(Int32, CancellationToken)uyguladığı yöntem.

(Devralındığı yer: RateLimiter)
AttemptAcquire(Int32)

İzinleri almak için hızlı zaman uyumlu girişim.

(Devralındığı yer: RateLimiter)
AttemptAcquireCore(Int32)

RateLimiter Uygulamaların için AttemptAcquire(Int32)uyguladığı yöntem.

(Devralındığı yer: RateLimiter)
Dispose()

RateLimiter'i atılır. Bu, başarısız bir kira ile kuyruğa alınan tüm almaları tamamlar.

(Devralındığı yer: RateLimiter)
Dispose(Boolean)

Uygulamaların yazılması için dispose yöntemi.

(Devralındığı yer: RateLimiter)
DisposeAsync()

RateLimiter'i zaman uyumsuz olarak atar.

(Devralındığı yer: RateLimiter)
DisposeAsyncCore()

Uygulamaların yazılması için DisposeAsync yöntemi.

(Devralındığı yer: RateLimiter)
GetStatistics()

Varsa istatistiklerin RateLimiter anlık görüntüsünü alır.

TryReplenish()

Kovayı yenilemeye çalışır.

Şunlara uygulanır