如何创建一个并发的 List 实例,我可以在其中按索引访问元素? JDK 是否有任何我可以使用的类或工厂方法?
原文由 AlikElzin-kilaka 发布,翻译遵循 CC BY-SA 4.0 许可协议
如何创建一个并发的 List 实例,我可以在其中按索引访问元素? JDK 是否有任何我可以使用的类或工厂方法?
原文由 AlikElzin-kilaka 发布,翻译遵循 CC BY-SA 4.0 许可协议
ConcurrentLinkedQueue
如果您不关心具有基于索引的访问并且只想要 List 的插入顺序保留特性,您可以考虑 java.util.concurrent.ConcurrentLinkedQueue
。因为它实现了 Iterable,一旦你完成了所有项目的添加,你可以使用增强的 for 语法遍历内容:
Queue<String> globalQueue = new ConcurrentLinkedQueue<String>();
//Multiple threads can safely call globalQueue.add()...
for (String href : globalQueue) {
//do something with href
}
原文由 Matt Passell 发布,翻译遵循 CC BY-SA 4.0 许可协议
8 回答6.5k 阅读
4 回答687 阅读✓ 已解决
2 回答3.4k 阅读
3 回答1.9k 阅读✓ 已解决
1 回答2.1k 阅读✓ 已解决
1 回答2.1k 阅读✓ 已解决
1 回答961 阅读✓ 已解决
java.util.concurrent 中 有一个并发列表实现。特别是 CopyOnWriteArrayList 。