【发布时间】:2016-04-13 22:16:09
【问题描述】:
我有一个工作线程应该遍历ArrayList<ConcurrentLinkedQueue>。其他线程可以添加和删除对象(队列)。但是 ArrayList 不是线程安全的。使用ConcurrentLinkedQueue<ConcurrentLinkedQueue> 代替ArrayList<ConcurrentLinkedQueue> 可以吗?
【问题讨论】:
-
List是一个接口。有些实现是线程安全的(例如CopyOnWriteArrayList),有些则不是(例如ArrayList)。 -
有什么区别?为什么 ConcurrentLinkedQueue 不起作用或为什么不好?
-
我认为这取决于您需要做什么。我会提供有关您的要求的更多详细信息。
-
基本上我所做的所有事情都在问题中说了出来。有一个线程不断迭代 List,其他线程可以添加和删除对象。
标签: java list concurrency thread-safety queue