Почему для sortedDictionary так много накладных расходов?

long b = GC.GetTotalMemory(true);
SortedDictionary<int, int> sd = new SortedDictionary<int, int>();
for (int i = 0; i < 10000; i++)
{
    sd.Add(i, i+1);
}
long a = GC.GetTotalMemory(true);
Console.WriteLine((a - b));            
int reference = sd[10];    

output (32 bit):

280108

output (64 bit):

480248

Сохранение только целых чисел (в массиве) потребует около 80000.

5
задан willem 28 September 2011 в 09:24
поделиться