集合
关于集合的问题
L_J_X03
这个作者很懒,什么都没留下…
展开
-
集合类不安全之并发修改异常(以arrayList为例)
ArrayList出现线程不安全的现象异常信息:java.util.ConcurrentModificationException导致原因:一个正在写,另一个进行抢夺,导致数据不一致异常,并发修改异常解决方案:1.使用Vector2.使用Collections类里面的synchronizedList(new ArrayList())3.new CopyOnWriteArrayList() 写时复制优化建议:每次添加的时候都会加锁,把创建一个新的集合,长度比当前的+1,进行变量赋值,再把新原创 2021-04-27 23:00:37 · 109 阅读 · 0 评论 -
集合不安全之set
异常:java.util.concurrentModificationException产生原因:在一个线程正在写入时,另一个线程闯入,导致数据不一致,并发数据修改异常。解决方法:1.使用collections类里面的synchronizedSet()2.使用java.util.concurrent里面的CopyOnWriteArraySet优化:CopyOnWriteArraySet底层创建的还是CpoyOnWriteArrayListHashSet底层是HashMap add方法其实原创 2021-04-28 09:38:24 · 47 阅读 · 0 评论 -
集合类不安全之map
异常:java.util.conCurrentModificationException产生原因:当一个线程写入时,另一个线程闯入,导致数据不一致,并发修改异常解决方法:1.使用concurrentHashMap2.使用collections里面的synchronizedMap优化:concurrentHashMap使用了synchronized和CAS...原创 2021-04-28 09:58:03 · 67 阅读 · 0 评论