JAVA相关知识

1、CopyOnWrite

(1)、在写操作的线程,会将数组复制出来一份进行操作。而原本的数组不会做改变。
(2)读线程则不会受到影响,但是可能读到的是一个过期的数据。

在juc(java.util.concurrent)包下有着这么两个类,CopyOnWriteArrayList 和 CopyOnWriteArraySet。直译过来就是在写操作的时候复制。这体现了读写分离的思想。
只能保证最终的一致性,不能保证实时的一致性。

适用场景

在读多,写少的情况下适用。

缺点

无法保证实时一致性
每次添加都会进行复制,对性能的消耗有点大

原文地址:https://www.cnblogs.com/jis121/p/11051900.html