gpt4 book ai didi

java - 使用 lucene IndexWriter 进行多线程处理

转载 作者:行者123 更新时间:2023-11-30 06:54:26 25 4
gpt4 key购买 nike

我正在使用 lucene 6.3.0 创建索引器。它从一个文件夹读取集合并创建另一个文件夹的索引。这工作正常,但我想进行多线程处理,我的意思是,给定 2 个集合(c1 和 c2),运行 2 个线程,每个线程都有一个集合和一个索引文件夹,这样,线程一将为集合 c1 到文件夹 i1,线程 2 将为集合 c2 创建索引到文件夹 i2。

我创建了一个 ThreadPool 类来管理它,但我得到了:

Exception in thread "pool-1-thread-2" org.apache.lucene.util.SetOnce$AlreadySetException: The object cannot be set twice!

来自

IndexWriter writer = new IndexWriter(directory, indexWriterConfig);

但是,无论如何都会创建索引。

为什么我会遇到此异常以及如何避免出现此异常?

最佳答案

您正在多个 IndexWriter 中重复使用相同的 IndexWriterConfig 实例。这是不允许的,您需要为每个 IndexWriter 生成一个新实例。

关于java - 使用 lucene IndexWriter 进行多线程处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42108992/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com