2010-10-01 1 views
1

У меня есть приложение, которое кэширует довольно приличное количество данных в памяти после разбора файла csv, а также отображает MKMapView. После прокрутки по всей стране от одного конца до другого в MKMapView, приложение неизбежно дает мне одну или более:MKMapView: предупреждение о принимаемой памяти. Уровень = 2

Received memory warning. Level=1 
Received memory warning. Level=2 

и, наконец, выходит из строя из-за нехватки памяти. Я пытался выяснить, как управлять памятью MKMapView или моими собственными данными (которые поступают из файла csv - файл csv нужно писать часто, поэтому я хотел бы сохранить его в памяти в некоторые моды или другие, если это возможно, если не лучшим средством обработки этой проблемы.

Любые идеи?

ответ

2

Используйте инструменты, чтобы определить, сколько памяти в кэше CSV принимает против в MKMapView. Если CSV является проблемы, а затем посмотрите на его сохранение с помощью CoreData или sqlite.

+0

Я еще не знаком с основными данными - я думал об этом, но что бы делать с основными данными для моей памяти? – JoBu1324

+0

CoreData позволит Вам сохраните данные на диске, а не в памяти. Это важно, если у вас слишком много данных для хранения в памяти. – tidwall

+0

Основные данные были ответом и довольно опытным опытом. Это не очень помогает NSZombieEnabled! – JoBu1324