다음을 통해 공유


TokenBucketRateLimiter 클래스

정의

RateLimiter 릴리스 메커니즘을 통해 토큰을 주기적으로 보충하는 구현입니다.

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

생성자

TokenBucketRateLimiter(TokenBucketRateLimiterOptions)

TokenBucketRateLimiter을 초기화합니다.

속성

IdleDuration

RateLimiter 모든 허용을 사용할 수 있는 기간을 지정합니다. 사용하지 않는 RateLimiters를 클린 수 있는 RateLimiter 관리자가 사용합니다.

IsAutoReplenishing

가 토큰을 ReplenishingRateLimiter 자동으로 보충하는지 또는 외부 원본이 을 정기적으로 호출 TryReplenish()할 것으로 예상되는지 여부를 지정합니다.

ReplenishmentPeriod

에서 토큰을 ReplenishingRateLimiter 보충하는 빈도를 지정합니다. false 가 이면 IsAutoReplenishing 호출해야 하는 빈 TryReplenish() 도입니다.

메서드

AcquireAsync(Int32, CancellationToken)

요청된 허가를 사용할 수 있거나 허가를 더 이상 획득할 수 없을 때까지 기다립니다.

(다음에서 상속됨 RateLimiter)
AcquireAsyncCore(Int32, CancellationToken)

구현이 RateLimiter 에 대해 구현하는 메서드입니다 AcquireAsync(Int32, CancellationToken).

(다음에서 상속됨 RateLimiter)
AttemptAcquire(Int32)

허가를 획득하려는 빠른 동기 시도.

(다음에서 상속됨 RateLimiter)
AttemptAcquireCore(Int32)

구현이 RateLimiter 에 대해 구현하는 메서드입니다 AttemptAcquire(Int32).

(다음에서 상속됨 RateLimiter)
Dispose()

RateLimiter를 삭제합니다. 이렇게 하면 실패한 임대를 사용하여 대기 중인 모든 획득이 완료됩니다.

(다음에서 상속됨 RateLimiter)
Dispose(Boolean)

작성할 구현에 대한 Dispose 메서드입니다.

(다음에서 상속됨 RateLimiter)
DisposeAsync()

RateLimiter를 비동기적으로 삭제합니다.

(다음에서 상속됨 RateLimiter)
DisposeAsyncCore()

작성할 구현에 대한 DisposeAsync 메서드입니다.

(다음에서 상속됨 RateLimiter)
GetStatistics()

사용 가능한 경우 통계의 RateLimiter 스냅샷 가져옵니다.

TryReplenish()

버킷을 보충하려고 시도합니다.

적용 대상