CopyOnWriteArrayList 是 java.util.concurrent 包提供的类,它实现了读操作无锁,写操作则通过操作底层数组的的新副本来实现,是一种读写分离的并发策略。
应用场景:例如在电商系统中需要将经常参加抢购但是抢完之后不付款的用户加入黑名单,这个时候如果说站在Java的数据结构里面,我们会想到使用哪种呢?自然而然CopyOnWriteArrayList成为了首选
那么为什么选择这个了,首先的话抢购加入黑名单的数量并不是很大,在抢购的过程中查询黑名单的读操作是非常频繁,但是写操作并不频繁,这个是十分符合CopyOnWriteArrayList的并发策略。