question rapide, Instruments rapporte une fuite ici ...Pourquoi les instruments signalent-ils des fuites de mémoire dans ce code?
MyViewController *myVC = [[MyViewController alloc] initWithNibName:@"myView" bundle:nil];
[self.navigationController pushViewController:myVC animated:YES]; //<<<<---- !00% leak according to Instruments
[myVC release];
Je comprends le myVC est retenu par le contrôleur de navigation, donc je suppose que le contrôleur de navigation les libère lorsque la vue est sauté de la pile de navigation?
En outre, il y a une autre question délicate dans un de mes boucles, l'analyseur statique signale une fuite potentielle ici ...
//Walk through the scheduled alarms and create notifications
NSMutableArray *fireDates = [[NSMutableArray alloc] init];
for(NSDate *fireDate in fireDates) //<<<<---- Static analyzer is reporting potential leak here
{
UILocalNotification *localNotif = [[UILocalNotification alloc] init];
if (localNotif == nil)
{
[fireDates release];
return;
}
localNotif.fireDate = fireDate;
localNotif.timeZone = [NSTimeZone defaultTimeZone];
localNotif.alertBody = [NSString stringWithFormat:@"%@", alarm.Label];
localNotif.alertAction = NSLocalizedString(@"Launch", nil);
localNotif.soundName = UILocalNotificationDefaultSoundName;
localNotif.userInfo = infoDict;
localNotif.repeatInterval = NSWeekCalendarUnit;
[[UIApplication sharedApplication] scheduleLocalNotification:localNotif];
[localNotif release];
}
[fireDates release];
Ai-je besoin d'une certaine façon de libérer fireDate?
Merci d'avance pour votre aide!
analyseur statique est généralement très bon ... peut-être ne pas ommiter le code manquant ... – Eiko
merci, Eiko, je viens de mettre à jour ma question pour inclure le code manquant. tes pensées? – BeachRunnerFred
exécutez-vous le test contre le simulateur ou l'appareil? J'ai remarqué que contre le simulateur, le programme des fuites montre des fuites défectueuses. –