0
索引編制時,通常爲Lucene leaked unclosed readers, writers, etc。有沒有辦法在Lucene中關閉所有Closeables?
有沒有辦法在每次迭代結束時關閉Lucene中的所有Closeables?
索引編制時,通常爲Lucene leaked unclosed readers, writers, etc。有沒有辦法在Lucene中關閉所有Closeables?
有沒有辦法在每次迭代結束時關閉Lucene中的所有Closeables?
恐怕沒有。
Lucene給你IndexSearcher
,IndexReader
和IndexWriter
。不關閉它們中的任何一個都會導致文件描述符泄漏,而且幾乎沒有辦法解決它。雖然有幾種技術:
SearcherManager
。但是,這仍然需要撥打manager.release(s)
,不適用於作家/讀者。.close()
調用放入終結器中。是的,我知道它很髒。但它的作品!AutoCloseable
並在try-with-resources語句中使用它們,以便自動進行關閉。理想情況下,所有這些類應自己實現AutoCloseable
,並希望他們將Lucene切換到Java 7時。