HashMap不是线程安全的。
HashMap的扩容机制就是重新申请一个容量是当前2倍的桶数组,然后将原先的记录逐个映射到新的桶里,然后将原先桶逐个置为null使得引用失效。
在put或resize发生时,后一个线程的操作数据会将前一个数据覆盖,导致数据丢失。
线程安全的容器:
Vector、HashTable、concurrentHashMap、copyOnWriteArrayList
HashMap不是线程安全的。
HashMap的扩容机制就是重新申请一个容量是当前2倍的桶数组,然后将原先的记录逐个映射到新的桶里,然后将原先桶逐个置为null使得引用失效。
在put或resize发生时,后一个线程的操作数据会将前一个数据覆盖,导致数据丢失。
线程安全的容器:
Vector、HashTable、concurrentHashMap、copyOnWriteArrayList
转载于:https://my.oschina.net/u/3938912/blog/3085696