Я читал здесь, в SO, что Hashtable и Dictionary почти одинаковы, за исключением преимуществ, позволяющих избегать упаковки / распаковки.
Использование Ants Profiler Я измеряю очень простое приложение со следующими структурами:
class Node
{
Dictionary<string, Node> Children = new Dictionary<string, Node>();
}
и
класс NodeOld { Hashtable Children = новая Hashtable (); }
Хорошо, список из 1,5 миллионов экземпляров первого занимает около 140 МБ, в то время как второй требует более 700 МБ (64-битная система).
Итак, есть ОГРОМНАЯ разница в реализации, не так ли?
Ants Profiler представляет ОГРОМНОЕ количество объектов Hashtable + Bucket на примере большого размера ...
Итак, есть ли эквивалентный (с памятью) вариант для словарей, если вы придерживаетесь версии 1.1?