关于IndexReader的open方法 请教

illu 2010-01-26
在使用IndexReader.open()创建一个reader后
我一直在使用这个reader 创建IndexSearcher进行查询

但是另外的线程使用IndexWriter 去改变索引里的内容 然后commit
如果reader不调用reopen方法的话 那么查询的结果是不会收到IndexWriter的影响的

而调用reader的reopen方法后 会返回一个新的IndexReader(前提是索引内容已经改变 如果索引内容未变 那么 reopen返回的还是原来的reader)
用这个新的reader可以查询到 更改了的信息

以上是我对IndexReader 和 IndexWriter的测试结果
我想请教一下 reader调用open方法都做了些什么? 
根据以上测试结果我可不可以理解为open就是将索引文件的内容加载至内存了?
谢谢
illu 2010-01-27
=.= 没人知道么。。。
luckaway 2010-01-27
索引的内容是不会加载到内存的!

可能就是读取版本号,加载索引文件名,读取文档数....!

具体我也不是很清楚!
TonyLian 2010-02-02
我想整体加载是不现实的,太大了。应该是加载索引的“索引”部分吧。
Global site tag (gtag.js) - Google Analytics