CopyOnWrite
介绍:CopyOnWrite检测COW,其基本思想是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把存在里面的数据取出来,然后两个合并到一个新的容器中去.
CopyOnWrite机制实现的两个并发容器分别是:CopyOnWriteArrayList和CopyOnWriteArraySet.
对于CopyOnWrite机制不理解的话,下面举个例子:
比如说CopyOnWriteArrayList,里面存放了{1,2,3}的数据,现在要add一个4进来,这时候,先将原来的数据copy一份出来,然后在与4合并.在保存回去;
在CopyOnWriteArrayList里面,它是线程安全的:
总结:由于在进行增加数据的时候要new一个新的容器,所以适合读多写少的场景.