首页 > 代码库 > Java CopyOnWriteArrayList分析
Java CopyOnWriteArrayList分析
CopyOnWriteArrayList是一种线程安全的ArrayList,顾名思义,它会利用写时拷贝技术,它对共享对象做只读操作的时候,大家都用一个共享对象,如果有可变的操作时,就会复制一份出来,然后在新的拷贝上进行操作。
所以可变操作的开销就会比较大,当然,在执行复制前,需要上独占锁,这样保证在复制的时候,不会出现不一致的情况,在复制完毕后,释放锁。而在做复制的时候,其它线程还是可以在原有的老的对象上进行只读操作,所以不会阻塞读操作。
当复制执行完之后,更改volatile引用,从而其它线程可以看到最新的修改结果。
原文:http://blog.csdn.net/hongchangfirst/article/details/39668723
作者:hongchangfirst
hongchangfirst的主页:http://blog.csdn.net/hongchangfirst
Java CopyOnWriteArrayList分析
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。