Здравствуйте, Gattaka, Вы писали:
G>Смешно! .NET и перфоманс.
Ну тут как: кому-то смешно, кто-то делает
G>Так вот оно падает по OutOfMemory — стандартные коллекции не могут аллоцировать более 2ГБ памяти.
Два варианта — или проблема в исчерпании адресного пространства / фрагментации LOH, или
<gcAllowVeryLargeObjects> не указан.
Нехватка АП лечится снятой галочкой prefer 32-bit, фрагментация LOH — обновлением фреймворка и (в тяжёлых случаях) server gc.
G>После поста Липперта на эту тему: Ответ Липперта как-то совсем грустно стало.
А в чём проблема-то?
off-the-shelf parts like Dictionary were designed to solve more common business problems, like mapping zip codes to cities and that sort of thing.
Не подходят стандартные контейнеры — используем сторонние (
c5 пойдёт) или пишем свою.
Ну, или как правильно подсказывают в ответах, используем решение, не утыкающееся в память.