Итак, у меня проблема с памятью.Кажется, что я неправильно освобождаю или освобождаю объекты, потому что я получаю тонкое наращивание памяти в моей игре.
Я инициирую все объекты следующим образом:
self = [super init];
if (self != nil) {
//inititalize object
}
Я освобождаю все объектыв методах dealloc, например, так:
[object release], object = nil;
Теперь я чувствую, что должен упомянуть, что моя игра работает на представлениях.У меня есть основной вид, который загружает подвиды в одну переменную под названием «currentView».Я переключаюсь между представлениями следующим образом.
if (currentView != nil) {
[currentView dealloc];
}
currentView = [[newView alloc] initWithVariables:vars];
Я хочу знать, связана ли проблема с моей инициализацией и освобождением объектов или с их представлениями.Я также хочу знать любые стратегии, которые я могу использовать, чтобы отследить любые утечки, которые не обнаруживаются в инструментах.
Мне нужна эта информация КАК МОЖНО СКОРЕЕ, и если вы можете помочь, она будет ДЕЙСТВИТЕЛЬНО оценена.Спасибо.
РЕДАКТИРОВАТЬ: Когда я запускаю его через инструменты, он показывает память, используемую моим приложением.и у него странная картина.Когда он загружает первый вид, он начинается с ок.17mb использовал.Затем я переключаюсь на второй вид, и он идет до 22 МБ.Теперь, если я вернусь к первому виду, он не опустится до 17 МБ, а вместо этого до 20 МБ.Теперь, когда я продолжаю переключаться между двумя, он идет между 22 МБ и 20 МБ и остается почти таким же.Как это можно объяснить?
РЕДАКТИРОВАТЬ 2: Шаблон, описанный в приведенном выше редактировании, является неизменным на протяжении всей игры.Из-за этой непротиворечивости я заметил утечку на уровне 70 КБ в моей игре.Очевидно, что это не должно вызывать каких-либо проблем, пока моя игра остается менее 100 МБ, поэтому, если они не играют в мою игру в течение РАСШИРЕННЫХ периодов времени, это не должно быть проблемой.
Хотя я все еще хотел бы знать, как я могуотследить утечку 70 КБ.