示例#1
0
        public void Add(T item)
        {
            int             index;
            CyclicDeque <T> bag = GetBag(out index);

            bag.PushBottom(item);
            AddHint(index);
            Interlocked.Increment(ref count);
        }
示例#2
0
        public void Add(T item)
        {
            Interlocked.Increment(ref count);
            GrowIfNecessary();

            CyclicDeque <T> bag = GetBag();

            bag.PushBottom(item);
        }
示例#3
0
        public void Add(T item)
        {
            int             index;
            CyclicDeque <T> bag = GetBag(out index);

            bag.PushBottom(item);

            // Cache operation ?
            if (container.Count > hintThreshold)
            {
                addHints.Enqueue(index);
            }

            Interlocked.Increment(ref count);
        }