public object Clone()
        {
            var nfq = new FloodQueue <T>(_capacity);

            nfq.AddAll(_hiddenQueue);
            return(nfq);
        }
 protected virtual void OnFloodQueueCapacityReached(FloodQueue <T> queue)
 {
     FloodQueueCapacityReached?.Invoke(queue);
 }