首页 > 其他 > 详细

CopyOnWriteArrayList 入门及介绍

时间:2020-04-24 11:43:07      阅读:62      评论:0      收藏:0      [点我收藏+]

本文详细介绍CopyOnWriteArrayList,从概述、原理、使用、源码、缺点等方面进行说明

背景

  简要介绍下CopyOnWriteArrayList产生的背景

  1.Vedtor 和SynchronizedList的锁力度比较大,基本上可以认为都是加锁在方法层面,并发度降低。(只有一把锁)

  2.CopyOnWriteArrayList降低了锁的力度,并且在迭代时是可以编辑的。

  3.CopyOnWrite容器中其他的实现,如:CopyOnWriteArraySet

适用场景

  1.读操作需要足够快,写操作慢一点没啥关系;比如系统中黑名单、监听器(监听很多的时间,读的场景多)

读写规则

  我们都知道读写锁的工作原理,即为多读一写。

  为了将读的性能提高到最大,CopyOnWrite不再加读锁,只提供写写的互斥操作。

实例代码

  首先我们演示ArrayList在迭代的时候进行了新增或删除,这里我们给出结论:ArrayList在迭代的时候不允许修改,见下代码

 

  我们用CopyOnWriteArrayList在迭代的时候进行下删除获取新增。

 

  

 

CopyOnWriteArrayList 入门及介绍

原文:https://www.cnblogs.com/cnxieyang/p/12766231.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!