HashTable、ConcurrentHashMap。
·HashTable是线程安全的map,内部的所有方法都加上了synchronized的关键字,保证了在多线程场景下同一时间只有一个线程对数组进行操作,因此效率比较低,不常用。
·另一种线程安全的map是Concurrent hash map,内部使用了分段锁改造了hash map,因为将整个map分成了多个片段,分别持有锁,每次对元素操作的时候只对元素所在的片段加锁,所以锁的粒度小,并发效率较高。
在JDK1.8之前,这个segment包含多个数组元素,在JDK1.8的时候锁的粒度进一步缩小,缩小为数组的单个元素。
本文暂时没有评论,来添加一个吧(●'◡'●)