.NET是否提供了为集合设置64位容量的方法?

时间:2015-10-21 19:49:55

标签: c# performance collections

我正在使用一些非常大的集合(列表和词典),包含超过Int32.MaxValue个项目。
运行我的应用程序的机器可能有64到1024 GB的RAM,因此目前不需要考虑内存空间。

我需要知道两件事:

a) System.Collections.Generic对象可以处理64位项目计数吗?

b)如果有,是否可以将初始容量设置为大于Int32.MaxValue的值?

我一直在阅读将初始容量准确设置在您需要的地方所带来的显着性能优势 - 例如here
我认为随着集合越来越大,设置初始容量的重要性变得越来越重要。

1 个答案:

答案 0 :(得分:1)

根据ListsHashSets上的MSDN文档,您可以在64位计算机上将最大容量设置为20亿。

  

对于非常大的List对象,通过在运行时环境中将配置元素的enabled属性设置为true,可以将64位系统上的最大容量增加到20亿个元素。