Ich möchte nur meine Erfahrung zusätzlich zur Antwort von Quinn Taylor hinzufügen.
In einer meiner Apps muss ich Daten analysieren und in Kerndatenobjekten speichern und diese Objekte später in den Ansichten anzeigen lassen. Tatsächlich funktioniert die App einwandfrei und stürzt überhaupt nicht ab, bis ich mehrmals versucht habe, einen Stresstest zum Hin- und Herbewegen durchzuführen und mehrere Ansichten so schnell wie möglich zu öffnen. Die App stürzt mit der obigen Meldung ab.
Ich habe alle Methoden ausprobiert, die Quinn in seiner Antwort vorgeschlagen hat, und konnte immer noch nicht herausfinden, wo die genaue Ursache lag.
Ich habe NSZombieEnabled = YES und NSStackLogging = YES festgelegt und die Befehlsshell malloc_history ausgeführt, um herauszufinden, warum, aber immer noch kein Glück. Es wird immer darauf hingewiesen, wo ich die Daten in Kerndatenobjekten speichere. Tatsächlich habe ich die tausendfach freigegebenen Objekte dort tausendmal überprüft, nichts Seltsames.
Das Ausführen von Instrumenten mit verschiedenen Tools (Zuordnungen, Lecks usw.) hat immer noch nicht geholfen. Aktivieren Sie die Wache Malloc hat noch nichts.
Letzte Rettung: Ich habe versucht, zu den Ansichten zurückzukehren, in denen die Objekte aus Core Data entnommen wurden, und eine Aufbewahrungsnachricht an alle diese Objekte gesendet und diese Änderungen zur Kenntnis genommen. Es hat das Problem gelöst !!!
Also fand ich heraus, dass ich keinen behalten konnte, das ist genau die Ursache. Ich möchte nur meine Erfahrungen teilen, damit Sie eine weitere Rettung für Ihre App haben.