线程安全的使用HashMap的三种方法

一般情况下使用HashMap可以解决key-value的使用要求。

但是在对线程同步有要求的情况下,HashMap由于自身特性不能满足,可以采用下面几种方式

1,Hashtable

Map<String, String> map = new Hashtable<>()

2,ConcurrentHashMap

Map<String, String> map = new ConcurrentHashMap<>()

3,SynchronizedMap

Map<String, String> map = Collections.synchronizedMap(new HashMap<String, Strinig>());

虽然三种方式都可以,但是从性能上面看,

ConcurrentHashMap > SynchronizedMap > Hashtable
相同数据量下ConcurrentHashMap大概只需要一半耗时(数据量够大,十万级)

原文地址:https://www.cnblogs.com/itjone/p/15015612.html