SlidingWindowRateLimiter 类

定义

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

public ref class SlidingWindowRateLimiter sealed : System::Threading::RateLimiting::ReplenishingRateLimiter
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 。 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。

适用于