Bert.RateLimiters.RollingWindowThrottler.CheckExitTimeQueue C# (CSharp) Method

CheckExitTimeQueue() private method

private CheckExitTimeQueue ( ) : void
return void
        private void CheckExitTimeQueue()
        {
            if(nextCheckTime > SystemTime.UtcNow.Ticks)
                return;

            while (expirationTimestampsQueue.Count > 0 && expirationTimestampsQueue.Peek() <= SystemTime.UtcNow.Ticks)
            {
                expirationTimestampsQueue.Dequeue();
                remainingTokens++;
            }

            //try to determine next check time
            if (expirationTimestampsQueue.Count > 0)
            {
                var item = expirationTimestampsQueue.Peek();
                nextCheckTime = item;
            }
            else
                nextCheckTime = timeUnitTicks;
        }