Testuję na telefonie iPhone 4 z systemem iOS 7.1 podłączonym do Xcode 5.1.1. Nie rozumiem, dlaczego otrzymuję ostrzeżenia z pamięci, a nawet awarie, gdy instrumenty pokazują, że moja aplikacja używa tylko kilku megabajtów i jest dużo wolnej pamięci (patrz załącznik). Jakieś pomysły?Dlaczego ostrzeżenia o pamięci z wykorzystaniem 4 MB i 320 MB za darmo?
Aktualizacja:
W instrumentach, jak podejrzewałem, znalazłem żadnych przecieków, ale "Anonymous VM" nadmiernie duży rozmiar wydaje i wypełnione danymi obrazu. Każda komórka tabeli w mojej aplikacji wyświetla plik JPEG. Być może powinienem wstępnie skalować te obrazy i to jest przyczyną dużego rozmiaru anonimowej maszyny wirtualnej ... Więcej dochodzenia do zrobienia.
Możesz mieć wiele nieszczelności ... czy sprawdziłeś to na przyrządach? Uruchom analizator statyczny? –
Gdybym miał dużo przecieków, to nie byłoby to widoczne, gdy zużycie pamięci wzrastało z czasem (patrz załączony zrzut ekranu)? – davecom
Nie wierzę tak, nie ... Mogę się mylić, a jeśli tak, to inni mnie poprawią. Ale cała idea przecieku pamięci polega na tym, że wskaźnik do jakiegoś adresu pamięci wypadł z zakresu i został zniszczony, bez tego, że pamięć została zwolniona, więc intuicyjnie nie sądzę, że wyciekająca pamięć byłaby pokazywana przez narzędzia jako "posiadane" "przez twoją aplikację ... w każdym razie, dlaczego nie sprawdzić? To coś, co powinniśmy rutynowo robić. –