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