线程安全集合类

学习Java集合类时我们就知道,ArrayList、HashMap等不是线程安全的,那么如何线程安全的操作这些集合类呢?前面我们学习过synchronized线程同步代码块和Lock锁接口,不过实际上对于集合类的操作我们没必要自己实现这些同步机制,JDK提供了一些线程安全的集合类供我们使用。

CopyOnWriteArrayList 线程安全数组:JDK1中具备线程安全的数组Vector对象,不过现在更推荐的是使用CopyOnWriteArrayList,两者底层实现有一些区别,后者在大部分场景下能实现更好的并发性能。

ConcurrentHashMap 线程安全哈希表:ConcurrentMap能够实现线程安全的Map对象,ConcurrentMap在插入对象时并不对把整个Map锁住,因此比单纯的锁住Map对象实现线程安全更加高效。

作者:Gacfox
版权声明:本网站为非盈利性质,文章如非特殊说明均为原创,版权遵循知识共享协议CC BY-NC-ND 4.0进行授权,转载必须署名,禁止用于商业目的或演绎修改后转载。
Copyright © 2017-2024 Gacfox All Rights Reserved.
Build with NextJS | Sitemap