SlidingWindowRateLimiter 类

定义

RateLimiter 定期补充许可证计数器的实现,而不是通过发布机制。

public sealed class SlidingWindowRateLimiter : System.Threading.RateLimiting.ReplenishingRateLimiter
type SlidingWindowRateLimiter = class
    inherit ReplenishingRateLimiter
Public NotInheritable Class SlidingWindowRateLimiter
Inherits ReplenishingRateLimiter
继承
SlidingWindowRateLimiter

构造函数

SlidingWindowRateLimiter(SlidingWindowRateLimiterOptions)

初始化 SlidingWindowRateLimiter

属性

IdleDuration

指定 具有所有可用许可证的时长 RateLimiter 。 供可能想要清理未使用的 RateLimiters 的 RateLimiter 管理员使用。

IsAutoReplenishing

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

ReplenishmentPeriod

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

尝试在窗口中补充请求计数器。

适用于