Оптимизация памяти коллекций .net - будет ли этот метод работать?

Как и почти любое другое большое .NET приложение, мое текущее C # ] проект содержит множество коллекций .net .
Иногда я с самого начала не знаю, каков будет размер коллекции (List / ObservableCollection / Dictionary / и т. Д.).
Но много раз я точно знаю, что это будет.

Я часто получаю OutOfMemoryException , и мне говорили, что это может произойти не только из-за ограничений размера процесса, но и из-за фрагментации.

Итак, у меня такой вопрос - будет ли установка размера коллекции (с использованием аргумента емкости в конструкторе) каждый раз, когда я узнаю ее ожидаемый размер, поможет мне предотвратить по крайней мере некоторые проблемы фрагментации?

Это цитата из msdn :

Если размер коллекции может быть оценка, указав начальную емкость устраняет необходимость выполнить ряд изменения размера операции при добавлении элементов в Список.

Но все же я не хочу начинать изменять большие части моего кода ради чего-то, что может не быть настоящей проблемой.

Помогло ли это кому-нибудь из вас решить проблемы с нехваткой памяти?

5
задан Eliyahu 25 June 2014 в 11:47
поделиться