3
如何获取lucene搜索字符串的确切时间? 我想表现的东西是这样的: 计算lucene搜索的时间
关于x
结果xx
秒。
我怎样才能得到准确的时间?是他们在lucene库下的任何实用工具吗? 还是我需要自己计算一下?
编辑: 假设他们是在Lucene的核心库中没有实用本:
这是搜索码:
TopScoreDocCollector collector = TopScoreDocCollector.create(100, true);
is.search(query, collector);
hits = collector.topDocs().scoreDocs;
我怎样才能得到搜索的准确时间(这行应该我用计时器包装)?
多了一个编辑:我想这:
long t1 = System.currentTimeMillis();
is.search(query, collector);
hits = collector.topDocs().scoreDocs;
long t2 = System.currentTimeMillis();
Long time = (t2-t1);
System.out.println("time : " + time);
我得到time : 0
控制台上的每次搜索。
是否意味着...... Lucene在搜索中没有时间? (我的索引中只有100个文档)
还有一个:试过这个;
long start = System.nanoTime();
is.search(query, collector);
hits = collector.topDocs().scoreDocs;
long end = System.nanoTime();
long time = (end - start)/1000;
此打印:
time : 10261
time : 12285
time : 14513
time : 1309
只是在执行搜索的调用周围包裹一个计时器。 – adrianbanks 2012-07-29 19:27:50
这意味着..NO在lucene核心下的实用程序? – JAVAGeek 2012-07-29 19:28:41
100个文件数量非常少。尝试使用'System.nanoTime()' – mishadoff 2012-07-29 20:16:05