我有一个List容器,最开始可能包含100,000个项目.当程序运行时,此列表将慢慢清空,我是否应该在清空列表时更改容量?
我做了一些测试,执行时间似乎是一样的,但降低列表容量有多少开销?我可以找到很多关于增加容量的信息,但没有太多关于降低容量的信息.
Ode*_*ded 10
除非你的内存量非常低,否则这是一个微优化.
通常,没有必要改变a的容量List<>.
从TrimExcess方法文档:
如果不将新元素添加到集合中,则此方法可用于最小化集合的内存开销.但是,重新分配和复制大型文件的成本
List<T>可能相当大,因此如果列表容量超过90%,TrimExcess方法就不会执行任何操作.这避免了相对较小的增益导致大的重新分配成本.
| 归档时间: |
|
| 查看次数: |
2777 次 |
| 最近记录: |