1、首先我们来看一下怎么个模拟多线程同时操作同一个hashMap的代码
2、多线程下操作同一个hashMap会出现的报错
3、方式1:使用锁的机制去保证HashMap在多线程中的操作(不推荐使用,编码太恶心了)
4、方式2:在多线程中使用Collections.synchronizedMap(Map map)方法,可以将HashMap变成一个同步的容器(拥有锁限制的同步机制)
5、方式3:直接使用并发包下的ConcurrentHashMap,concurrentHashMap的put方法是加锁的,它是同步的(采用了ReentrantLock可重入锁),可以保证线程安全