I've got a question here needing your help:
For my index, I opened one IndexWriter (autocommit mode) and one
IndexSearcher on it;
I have quite a lot of threads here concurrently writing new documents and
doing search in index.
the IndexWriter is flushed periodically.
as I want the IndexSearcher be able to see the latest record, I also need to
periodically reopen the underlying IndexReader.
But is it safe to just call close() on the IndexSearcher when there are
still threads using it?
or maybe I should use atomic counter to make sure there's no thread using it
before calling close() on IndexSearcher?