У меня плотный цикл, который повторяется около 500 раз. На каждой итерации будет создаваться несколько объектов NSDecimalNumber для выполнения арифметики.
Пример - этот фрагмент кода находится в цикле for. -decimalNumberByAdding: метод создает новый экземпляр NSDecimalNumber и автоматически выпускает его.
resultDecimalNumber = [resultDecimalNumber decimalNumberByAdding:anotherDecimalNumber];
Итак, позвольте мне сделать это правильно: если цикл огромен, я собираю тысячи объектов NSDecimalNumber, которые ожидают завершения всего цикла и возврата метода, чтобы получить автоматическое освобождение после длительного ожидания.
Как можно предотвратить переполнение памяти? Я всегда пытался использовать неавторизованные объекты, но в этом случае кажется, что я должен жить с ними.
Представь, что это был мой цикл:
for(i=0, i<500, i++) {
resultDecimalNumber = [resultDecimalNumber decimalNumberByAdding:anotherDecimalNumber];
}
Что бы я там добавил? Должен ли я создать пул автозапуска внутри цикла и слить его? Будет ли это иметь смысл?