CopyOnWrite机制

写时复制,是一种保证线程安全的手段。就是在忘集合添加数据时,先copy原有集合到一个新的集合,然后在新的集合上添加数据,最后保存新的集合。(注意集合对象的声明使用volatile,保证写对读可见)

但是同时写的话,还是有线程安全问题,所以写的方法是加锁的(这里加锁用的是ReentrantLock)

缺点:不停的copy对内存和性能影响都很大,所以适用在写比较少的场景

以上可以引申问:volatile、ReentrantLock

可以参考:https://www.jianshu.com/p/afc6e0ae08b0

posted @ 2019-09-09 17:55  绿色森林  阅读(266)  评论(0编辑  收藏  举报