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

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

适用场景

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

缺点

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

相关文章:

  • 2021-07-18
  • 2021-08-15
  • 2022-01-04
  • 2021-12-28
  • 2021-08-15
  • 2021-08-11
  • 2022-12-23
  • 2021-07-04
猜你喜欢
  • 2022-02-22
  • 2022-02-14
  • 2021-11-21
  • 2021-07-15
  • 2021-05-17
  • 2021-05-19
相关资源
相似解决方案