【发布时间】:2010-10-24 09:05:57
【问题描述】:
我正在研究Dictionary<TKey, TValue> 背后的代码。有趣的是在private Insert 方法中,有一个bucket 似乎在预先确定大小的数组中保留了空槽。在Insert 方法中,代码检查存储桶是否还有任何元素,并在必要时调整大小。添加的元素数量是质数的因数。此外,字典条目属性存储在具有哈希码、键和值的结构中。
我的问题:目的是什么?这样做是为了防止在可能没有足够内存时尝试向字典对象添加项目吗?
注意:我不想在这里粘贴任何代码,因为它需要反汇编才能阅读。
【问题讨论】:
-
了解哈希表的实现。
-
@leppie,我很乐意 - 需要几个链接? :)
标签: .net dictionary