在Java中存在许多队列实现,例如LinkedList、BlockingQueues。它们都是线程安全的吗?如果你的回答是否定的,哪些实现支持并发访问并提供最佳性能?
注意:我正在使用JDK 1.6。
在Java中存在许多队列实现,例如LinkedList、BlockingQueues。它们都是线程安全的吗?如果你的回答是否定的,哪些实现支持并发访问并提供最佳性能?
注意:我正在使用JDK 1.6。
例如,LinkedList
不是线程安全的。
java.util.concurrent
包中的数据结构是线程安全的。
最佳性能取决于您对数据结构的使用方式。您选择实现不是基于其性能,而是基于队列的行为以及您需要对队列执行的操作。例如,SynchronousQueue
与 LinkedList
或 ArrayBlockingQueue
的行为完全不同。