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 。 由可能想要清理未使用的 RateLimiter 的 RateLimiter 管理员使用。

IsAutoReplenishing

指定 是 ReplenishingRateLimiter 自动补充其令牌,还是希望外部源定期调用 TryReplenish()

ReplenishmentPeriod

指定 补充令牌的频率 ReplenishingRateLimiter 。 如果 IsAutoReplenishingfalse ,则这是应调用的频率 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()

尝试补充存储桶。

适用于