我正在尝试使用chronicleMap.parallelStream:
myChronicleMap.entrySet().parallelStream().forEach((entry) -> {
process(entry); //heavy process
}
我有以下例外。
java.lang.IllegalStateException:ChronicleMap ...仅应从单个线程访问迭代器
任何想法如何使用chronicleMap和parallelStream?
谢谢
最佳答案
如果纪事表不支持并行流,那么您将不得不将其内容复制到一个映射实现中。
Map<?, ?> mapCopy = myChronicleMap.entrySet()
.stream()
.collect(Collectors.toMap(Entry::getKey, Entry::getValue));
mapCopy.entrySet().parallelStream().forEach(this::process);
关于java - ChronicleMap和parallelStream,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46388950/