TokenBucketRateLimiter 类

定义

RateLimiter 定期补充令牌的实现,而不是通过发布机制补充令牌。

public ref class TokenBucketRateLimiter sealed : System::Threading::RateLimiting::ReplenishingRateLimiter
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 管理器使用,这些管理器可能想要清理未使用的 RateLimiters。

IsAutoReplenishing

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

ReplenishmentPeriod

指定补充令牌的频率 ReplenishingRateLimiterfalse如果是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)

释放要写入的实现的方法。

(继承自 RateLimiter)
DisposeAsync()

异步释放 RateLimiter。

(继承自 RateLimiter)
DisposeAsyncCore()

DisposeAsync 方法用于要写入的实现。

(继承自 RateLimiter)
GetStatistics()

获取统计信息的 RateLimiter 快照(如果可用)。

TryReplenish()

尝试补充存储桶。

扩展方法

名称 说明
ConfigureAwait(IAsyncDisposable, Boolean)

配置如何执行从异步可释放项返回的任务的 await。

适用于