У меня есть довольно простое приложение C#, которое создает большую хеш-таблицу. Ключами этой хэш-таблицы являются строки, а значения - int.Почему было бы исключено исключение из памяти, если доступна память?
Программа отлично работает, пока в хеш-таблицу не добавится около 10,3 млн. Элементов, когда в строке добавляется ошибка с памятью, которая добавляет элемент в таблицу hasbtable.
Согласно диспетчеру задач, моя программа использует только 797 МБ памяти, и все еще доступно более 2 ГБ. Это 32-разрядная машина, поэтому я знаю, что только один 2gb может использоваться одним процессом, но это все равно оставляет около 1,2 гб, что хэш-таблица должна быть в состоянии расшириться.
Зачем возникла ошибка в памяти?
Кстати, я надеюсь, вы понимаете, что это не имеет ничего общего с C#? –
@John: но, возможно, возможно, это связано с .net. – Wizard79
@ Lorenzo: вот моя точка. Не C#, но .NET. –