集合类不安全(list不安全解决(CopyOnWriteArrayList))
ArrayList多线程不安全

报错:ConcurrentModficationException(并发修改异常)

解决方案
方案1、用Vocter(底层是加syn锁的(jdk1.0就有了))


Vocter源码(add)


方案2、通过工具类(也就是将这list变为安全的list)(也就是这个list顶部的Collection的工具类(Collection.synchronizedList))


方案3、使用JUC下的CopyOnWriteArrayList
![]()



CopyOnWriteArrayList底层源码(用的数组(写入时复制))



CopyOnWriteArrayList原理:写入时复制(COW是计算机程序设计的一种优化策略),其是用锁+数组拷贝+volatile保证线程安全的
Vector的add方法(被syn修饰,速率低)

CopyOnWriteArrayList的add方法用的是lock锁(先复制,再写回去)
