Show / Hide Table of Contents

    Class ReaderManager

    Utility class to safely share DirectoryReader instances across multiple threads, while periodically reopening. This class ensures each reader is disposed only once all threads have finished using it.

    This is a Lucene.NET EXPERIMENTAL API, use at your own risk
    Inheritance
    System.Object
    ReferenceManager<DirectoryReader>
    ReaderManager
    Inherited Members
    ReferenceManager<DirectoryReader>.Current
    ReferenceManager<DirectoryReader>.Acquire()
    ReferenceManager<DirectoryReader>.Dispose()
    ReferenceManager<DirectoryReader>.Dispose(Boolean)
    ReferenceManager<DirectoryReader>.MaybeRefresh()
    ReferenceManager<DirectoryReader>.MaybeRefreshBlocking()
    ReferenceManager<DirectoryReader>.AfterMaybeRefresh()
    ReferenceManager<DirectoryReader>.Release(DirectoryReader)
    ReferenceManager<DirectoryReader>.AddListener(ReferenceManager.IRefreshListener)
    ReferenceManager<DirectoryReader>.RemoveListener(ReferenceManager.IRefreshListener)
    Namespace: Lucene.Net.Index
    Assembly: Lucene.Net.dll
    Syntax
    public sealed class ReaderManager : ReferenceManager<DirectoryReader>

    Constructors

    | Improve this Doc View Source

    ReaderManager(IndexWriter, Boolean)

    Creates and returns a new ReaderManager from the given IndexWriter.

    Declaration
    public ReaderManager(IndexWriter writer, bool applyAllDeletes)
    Parameters
    Type Name Description
    IndexWriter writer

    the IndexWriter to open the IndexReader from.

    System.Boolean applyAllDeletes

    If true, all buffered deletes will be applied (made visible) in the IndexSearcher / DirectoryReader. If false, the deletes may or may not be applied, but remain buffered (in IndexWriter) so that they will be applied in the future. Applying deletes can be costly, so if your app can tolerate deleted documents being returned you might gain some performance by passing false. See OpenIfChanged(DirectoryReader, IndexWriter, Boolean).

    | Improve this Doc View Source

    ReaderManager(Directory)

    Creates and returns a new ReaderManager from the given Directory.

    Declaration
    public ReaderManager(Directory dir)
    Parameters
    Type Name Description
    Directory dir

    the directory to open the DirectoryReader on.

    Methods

    | Improve this Doc View Source

    DecRef(DirectoryReader)

    Declaration
    protected override void DecRef(DirectoryReader reference)
    Parameters
    Type Name Description
    DirectoryReader reference
    Overrides
    Lucene.Net.Search.ReferenceManager<Lucene.Net.Index.DirectoryReader>.DecRef(Lucene.Net.Index.DirectoryReader)
    | Improve this Doc View Source

    GetRefCount(DirectoryReader)

    Declaration
    protected override int GetRefCount(DirectoryReader reference)
    Parameters
    Type Name Description
    DirectoryReader reference
    Returns
    Type Description
    System.Int32
    Overrides
    Lucene.Net.Search.ReferenceManager<Lucene.Net.Index.DirectoryReader>.GetRefCount(Lucene.Net.Index.DirectoryReader)
    | Improve this Doc View Source

    RefreshIfNeeded(DirectoryReader)

    Declaration
    protected override DirectoryReader RefreshIfNeeded(DirectoryReader referenceToRefresh)
    Parameters
    Type Name Description
    DirectoryReader referenceToRefresh
    Returns
    Type Description
    DirectoryReader
    Overrides
    Lucene.Net.Search.ReferenceManager<Lucene.Net.Index.DirectoryReader>.RefreshIfNeeded(Lucene.Net.Index.DirectoryReader)
    | Improve this Doc View Source

    TryIncRef(DirectoryReader)

    Declaration
    protected override bool TryIncRef(DirectoryReader reference)
    Parameters
    Type Name Description
    DirectoryReader reference
    Returns
    Type Description
    System.Boolean
    Overrides
    Lucene.Net.Search.ReferenceManager<Lucene.Net.Index.DirectoryReader>.TryIncRef(Lucene.Net.Index.DirectoryReader)

    Extension Methods

    ReferenceManagerExtensions.GetContext<T>(ReferenceManager<T>)

    See Also

    SearcherManager
    • Improve this Doc
    • View Source
    Back to top Copyright © 2020 Licensed to the Apache Software Foundation (ASF)