1 write to _options
System.Threading.RateLimiting (1)
System\Threading\RateLimiting\SlidingWindowRateLimiter.cs (1)
78
_options
= new SlidingWindowRateLimiterOptions
27 references to _options
System.Threading.RateLimiting (27)
System\Threading\RateLimiting\SlidingWindowRateLimiter.cs (27)
49
public override bool IsAutoReplenishing =>
_options
.AutoReplenishment;
89
_replenishmentPeriod = new TimeSpan(
_options
.Window.Ticks /
_options
.SegmentsPerWindow);
97
if (
_options
.AutoReplenishment)
120
if (permitCount >
_options
.PermitLimit)
122
throw new ArgumentOutOfRangeException(nameof(permitCount), permitCount, SR.Format(SR.PermitLimitExceeded, permitCount,
_options
.PermitLimit));
166
if (permitCount >
_options
.PermitLimit)
168
throw new ArgumentOutOfRangeException(nameof(permitCount), permitCount, SR.Format(SR.PermitLimitExceeded, permitCount,
_options
.PermitLimit));
189
Debug.Assert(
_options
.QueueLimit >= _queueCount);
190
if (
_options
.QueueLimit - _queueCount < permitCount)
192
if (
_options
.QueueProcessingOrder == QueueProcessingOrder.NewestFirst && permitCount <=
_options
.QueueLimit)
220
while (
_options
.QueueLimit - _queueCount < permitCount);
234
Debug.Assert(_queueCount <=
_options
.QueueLimit);
259
int periodsUntilEnough =
_options
.SegmentsPerWindow;
260
for (int i = 1; i <=
_options
.SegmentsPerWindow; i++)
262
int segmentIndex = (_currentSegmentIndex + i) %
_options
.SegmentsPerWindow;
301
if (_queueCount == 0 || (_queueCount > 0 &&
_options
.QueueProcessingOrder == QueueProcessingOrder.NewestFirst))
326
if (
_options
.AutoReplenishment)
359
if (RateLimiterHelper.GetElapsedTime(_lastReplenishmentTick, nowTicks) < ReplenishmentPeriod && !
_options
.AutoReplenishment)
368
_currentSegmentIndex = (_currentSegmentIndex + 1) %
_options
.SegmentsPerWindow;
378
Debug.Assert(_permitCount <=
_options
.PermitLimit);
384
_options
.QueueProcessingOrder == QueueProcessingOrder.OldestFirst
393
_options
.QueueProcessingOrder == QueueProcessingOrder.OldestFirst
403
_options
.QueueProcessingOrder == QueueProcessingOrder.OldestFirst
443
if (_permitCount ==
_options
.PermitLimit)
470
RequestRegistration next =
_options
.QueueProcessingOrder == QueueProcessingOrder.OldestFirst