Jak mogę się upewnić, że przyczyną awarii jest brak pamięci?
Czy jest coś konkretnego w dzienniku awarii? Może muszę użyć narzędzi lub bibliotek?
AKTUALIZACJA: moja aplikacja zużywa dużo pamięci i odbiera ostrzeżenia. Bardzo trudno jest zmniejszyć zużycie pamięci. Od czasu do czasu ulega awarii. Ostrzegam jednak, że chcę się upewnić, że się nie zawiesi z innych powodów.
Jak więc sprawdzić przyczynę awarii aplikacji (za każdym razem otrzymuje wiele ostrzeżeń o pamięci)
AKTUALIZACJA 2: Aplikacja ma dużo grafiki 3D i skomplikowany interfejs użytkownika, który zajmuje dużo pamięci na tekstury. Klient nie chce wykonywać żadnych pauz „ładowanie ...”. Jeśli rozładuję niewidoczne tekstury w tle, nie będę mógł uzyskać płynnych animacji.
Muszę tylko wykryć czy są jakieś przyczyny awarii oprócz pamięci.
Odpowiedzi:
0 dla odpowiedzi № 1Przynajmniej możesz zaimplementować tę metodę
- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application
w aplikacji delegowanej i umieść dziennik, aby sprawdzić, czy rzeczywiście przechodzisz przez to przed awarią.
0 dla odpowiedzi nr 2
Produkt -> Profil -> wyciek jest możliwą metodą sprawdzenia wycieku pamięci. Przydziały pokaże całkowitą używaną pamięć, oraz przecieki pokaże wycieki z powodu nie zwolnienia.
0 dla odpowiedzi № 3
samouczek debugowania-pamięci-przecieków-z-kodem-i-instrumentów-samouczka
to przydatny samouczek
0 dla odpowiedzi nr 4
Możesz użyć Narzędzie instrumentów Apple do profilowania różnych rzeczy, takich jak użycie pamięci. To narzędzie jest dołączone do Xcode.