Пример #1
0
            internal AtDequeuEnumerable(LLQueue <T> queue)
            {
                SinglyLinkedNode <T> head;
                SinglyLinkedNode <T> tail;

                while (Interlocked.CompareExchange(ref queue._head, tail = queue._tail, head = queue._head) != head)
                {
                    ;
                }
                _start = head;
                _end   = tail;
            }
Пример #2
0
 internal Enumerator(LLQueue <T> queue)
 {
     _node = (_queue = queue)._head;
 }
Пример #3
0
 internal DequeuEnumerator(LLQueue <T> queue)
 {
     _queue = queue;
 }
Пример #4
0
 internal DequeuEnumerable(LLQueue <T> queue)
 {
     _queue = queue;
 }