ITPub博客

首页 > 应用开发 > Java > 学习Java: CopyOnWrite集合

学习Java: CopyOnWrite集合

原创 Java 作者:zybing 时间:2007-08-16 08:43:15 0 删除 编辑
CopyOnWrite集合避免了在获取集合的iterator后,进行操作集合发生错误的情况[@more@]

CopyOnWriteArray集合有2个: CopyOnWriteArrayList 和 CopyOnWriteArraySet, 最适合于读操作通常大大超过写操作的情况

------------------------------------------------------------------
copy-on-write 模式:
实质上,这个模式声明了,为了维护对象的一致性快照,要依靠不可变性(immutability)来消除在协调读取不同的但是相关的属性时需要的同步。对于集合,这意味着如果有大量的读(即 get() ) 和迭代,不必同步操作以照顾偶尔的写(即 add() )调用.

----------------------------------------------------------
CopyOnWriteArrayList 和 CopyOnWriteArraySet 类,所有可变的(mutable)操作都首先取得后台数组的副本,对副本进行更改,然后替换副本。这种做法保证了在遍历自身更改的集合时,永远不会抛出 ConcurrentModificationException 。遍历集合会用原来的集合完成,而在以后的操作中使用更新后的集合。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/855/viewspace-960631/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 学习Java: Queue
下一篇: 学习Java: 1.5:Enum
请登录后发表评论 登录
全部评论

注册时间:2008-06-02

  • 博文量
    103
  • 访问量
    348206