CS-Notes 学习笔记
Java 后端 · Java 容器

线程安全的 List 有哪些?CopyOnWriteArrayList 适合什么场景?

先自己想一想,再看参考要点

参考要点

  • 线程安全的 List 有 Vector、Collections.synchronizedList() 和 CopyOnWriteArrayList
  • CopyOnWriteArrayList 写操作加锁并在复制的新数组上进行,写完再替换原数组,读不加锁
  • 适合读多写少的场景,缺点是写时内存约翻倍,写入期间读到的可能是旧数组,迭代器也看不到创建后的修改
在学习站中自测这道题看这道题所在的一天

学习站:先用面试题自评定级,按水平和面试日期排出每天的计划,自评过的题按间隔复习。免费、无需注册,记录只保存在自己的浏览器中。