public void Switch()
 {
     lock (SyncRoot)
     {
         var tmp = buffer1;
         buffer1 = buffer2;
         buffer2 = tmp;
     }
 }
Example #2
0
        public LimitedQueue <T> Clone()
        {
            LimitedQueue <T> result = new LimitedQueue <T>(Capacity);

            result.index = this.index;
            result.Count = this.Count;

            Array.Copy(this.buffer, result.buffer, Capacity);
            return(result);
        }
 public DoubleLimitedQueue(int capacity)
 {
     buffer1  = new LimitedQueue <T>(capacity);
     buffer2  = new LimitedQueue <T>(capacity);
     Capacity = capacity;
 }