【发布时间】:2014-07-12 16:27:04
【问题描述】:
如果返回集合在另一个线程上迭代而主多映射在另一个线程上发生更改,Guava Multimap .values() 集合是否会引发并发修改异常?
如果是这样,如何避免这种情况?
基本上我需要从另一个线程上运行的方法返回 Multimap .values() 集合,而主线程可能会更新 Multimap。
文档中的这个声明是否意味着我会没事的? " *
当任何并发操作更新 *多图。并发读取操作将正常工作。允许并发 * 更新操作,通过调用 {@link 来包装你的多图 * Multimaps#synchronizedListMultimap}。”
谢谢
【问题讨论】:
-
会的。有关更多详细信息,请参阅 [this SO answer][1]。 [1]:stackoverflow.com/questions/1572178/…
标签: java multithreading guava