List引起的系统瓶颈

       今天,同事发现了一个系统瓶颈。我们发现在一个需要高速运行的线程中,总是出现缓慢的情况,引起了一系列的问题,这让我们觉得很头痛。今天,我的同事发现了这个问题,原因是在于每次在调用插入队列动作的时候调用了list::size()。可能对STL不是很敏感的人认为这可能并不是一个问题,但如果对STL比较熟悉的话,就会发现这个size调用是非常要命的事情。因为对于List来说,size意味着从头到尾遍历一遍队列计算长度,当队列长度越长,速度就越慢,这导致此处出现很大的问题。当这个容器改称deque之类的容器,问题就解决了,此类容器存在一个变量可以保存容器大小,因而避免了遍历的工作。

       非常佩服这位同事,发现这个问题,真是非常厉害,不是一般人可以做到的。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值