Exemplo n.º 1
0
 private bool TryClaimFreeSlot(out LockSlot <T> slot)
 {
     if (_closedSlots.TryTake(out slot))
     {
         slot.Open(_version.AdvanceNewToken());
         return(true);
     }
     return(false);
 }
Exemplo n.º 2
0
 public void FillEnumerable()
 {
     var queue = new FixedSizeQueue<int>(Enumerable.Range(0, 64));
     Assert.IsFalse(queue.Add(999));
     foreach (var item in Enumerable.Range(0, queue.Capacity))
     {
         int found;
         queue.TryTake(out found);
         Assert.AreEqual(found, item);
     }
 }
Exemplo n.º 3
0
        public void FillEnumerable()
        {
            var queue = new FixedSizeQueue <int>(Enumerable.Range(0, 64));

            Assert.IsFalse(queue.Add(999));
            foreach (var item in Enumerable.Range(0, queue.Capacity))
            {
                int found;
                queue.TryTake(out found);
                Assert.AreEqual(found, item);
            }
        }
Exemplo n.º 4
0
        public void Fill()
        {
            var queue = new FixedSizeQueue <int>(64);

            foreach (var item in Enumerable.Range(0, queue.Capacity))
            {
                queue.TryAdd(item);
            }
            foreach (var item in Enumerable.Range(0, queue.Capacity))
            {
                int found;
                queue.TryTake(out found);
                Assert.AreEqual(found, item);
            }
        }