java集合学习(四)---线程安全版的ArrayList和LinkedList

一、Collections.synchronizedList与CopyOnWriteArrayList

       ArrayList是线程不安全的,因此在并发编程时,经常会使用Collections.synchronizedList与CopyOnWriteArrayList来替代ArrayList,接下来对这两种list进行性能的比较。

       Collections.synchronizedList同步化的ArrayList写操作使用了同步锁,明显比CopyOnWriteArrayListsh用锁加复制数组的速度快。同时,CopyOnWriteArrayList的读操作的速度更快,并发性更好。

       详细看博客:https://blog.csdn.net/carson0408/article/details/81836189----性能比较

二、列表ArrayList、Vector、CopyOnWriteArrayList、Collections.synchronizedList(list)四种方式的比较

       详细看博客:列表实现有ArrayList、Vector、CopyOnWriteArrayList、Collections.synchronizedList(list)四种方式。

三、线程安全队列:ConcurrentLinkedQueue替代LinkedList

      ConcurrentLinkedQueue是 一个基于链接节点的无界线程安全队列。此队列按照 FIFO(先进先出)原则对元素进行排序。队列的头部 是队列中时间最长的元素。队列的尾部 是队列中时间最短的元素。 新的元素插入到队列的尾部,队列获取操作从队列头部获得元素。当多个线程共享访问一个公共 collection 时,ConcurrentLinkedQueue 是一个恰当的选择。此队列不允许使用 null 元素。

    详细可看:https://www.cnblogs.com/yangzhenlong/p/8359875.html

       

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值