Lucene.Net.Index.DocumentsWriterDeleteQueue.Clear C# (CSharp) Method

Clear() public method

public Clear ( ) : void
return void
        public void Clear()
        {
            GlobalBufferLock.@Lock();
            try
            {
                Node currentTail = Tail;
                GlobalSlice.SliceHead = GlobalSlice.SliceTail = currentTail;
                GlobalBufferedUpdates.Clear();
            }
            finally
            {
                GlobalBufferLock.Unlock();
            }
        }

Usage Example

Beispiel #1
0
        public virtual void TestClear()
        {
            DocumentsWriterDeleteQueue queue = new DocumentsWriterDeleteQueue();

            Assert.IsFalse(queue.AnyChanges());
            queue.Clear();
            Assert.IsFalse(queue.AnyChanges());
            int size               = 200 + Random.Next(500) * RANDOM_MULTIPLIER;
            int termsSinceFreeze   = 0;
            int queriesSinceFreeze = 0;

            for (int i = 0; i < size; i++)
            {
                Term term = new Term("id", "" + i);
                if (Random.Next(10) == 0)
                {
                    queue.AddDelete(new TermQuery(term));
                    queriesSinceFreeze++;
                }
                else
                {
                    queue.AddDelete(term);
                    termsSinceFreeze++;
                }
                Assert.IsTrue(queue.AnyChanges());
                if (Random.Next(10) == 0)
                {
                    queue.Clear();
                    queue.TryApplyGlobalSlice();
                    Assert.IsFalse(queue.AnyChanges());
                }
            }
        }
All Usage Examples Of Lucene.Net.Index.DocumentsWriterDeleteQueue::Clear