Ich habe ausfindig gemacht, warum NSObject Verweise, während explizit veröffentlicht werden, immer noch in ObjectAlloc angezeigt werden. Tatsächlich habe ich NSObject auf eine Basis-Shell reduziert, mit einem [[myObject alloc] init] unmittelbar gefolgt von einem [myObject release], und es sieht nicht so aus, als würde es in ObjectAlloc veröffentlicht werden. Dies ist ein großes Problem mit einer NavigationController-App, die mehrere View-Controller verschiebt/öffnet, da die zuletzt geöffneten View-Controller aufgrund dieser nicht veröffentlichten NSObject-Referenzen nicht freigegeben werden. Hmmmmmm.NSObject Release ... Immer noch in ObjectAlloc
Ich könnte meinen Code hier oben, und habe eine Reihe von "hast du, dass nie irgendwo hinkommen." Autorelease-Pools, blah blah.
Also, schauen wir uns die Probe 'SeismicXML' Beispiel App von Apple an ... feuern Sie es in ObjectAlloc/Leaks. Sehr einfach in getEarthquakeData:
XMLReader *streamingParser = [[XMLReader alloc] init];
[streamingParser parseXMLFileAtURL:[NSURL URLWithString:feedURLString] parseError:&parseError];
[streamingParser release];
ich eine Tonne Müll rumliegen sehen in ObjectAlloc von XMLReader, obwohl es freigegeben wird. Ich wette, wenn wir einen 'refresh' Knopf in dieser App setzen, um 'getEarthquakeData' erneut aufzurufen, würden wir die App innerhalb von 5 Aktualisierungen zum Absturz bringen.
Irgendwelche Gedanken?
Haben Sie versucht, am Telefon oder nur den Simulator? Was ist das eigentliche Problem, das Sie 101 Ausgänge verursacht? –