并发集合和普通集合以及安全集合的区别
在 java 中有普通集合、同步(线程安全)的集合、并发集合。并发集合常见的有 ConcurrentHashMap、ConcurrentLinkedQueue、ConcurrentLinkedDeque 等。并发集合位于java.util.concurrent 包下,是 jdk1.5之后才有的。
- 普通集合
普通集合通常性能最高,但是不保证多线程的安全性和并发的可靠性 - 并发集合
线程安全集合仅仅是给集合添加了 synchronized 同步锁,严重牺牲了性能,而且对并发的效率就
更低了 - 同步(线程安全)的集合
并发集合则通过复杂的策略不仅保证了多线程的安全又提高的并发时的效率