J'utilise deux objets, à savoir pagesUrl et pagesXmlParser dans le code et après leur utilisation, je libère ces deux objets. Son fonctionnement est bon mais c'est en les montrant en fuite de mémoire. quand j'ai essayé de le vérifier, j'ai vérifié le nombre de références de ces objets et son '1' même après la libération des objets. quelqu'un peut-il m'aider à supprimer cette fuite et comment libérer ces objets particuliers dans le code suivant.iPhone: fuite de mémoire dans ce code?
-(void)loadPagesForChapter:(NSString *)path{
// have to parse the pages xml for this chapter
NSURL *pagesUrl = [[NSURL alloc] initFileURLWithPath:[self pagesXmlPath:path]];
NSXMLParser *pagesXmlParser = [[NSXMLParser alloc] initWithContentsOfURL:pagesUrl];
PagesAccumulator *pageLoader = [[PagesAccumulator alloc] init];
pagesXmlParser.delegate = pageLoader;
[pagesXmlParser parse];
// parsing pages done
// get the pages array
self.arrayOfPages = pageLoader.arrayOfPages;
[pageLoader release];
[pagesXmlParser release];
[pagesUrl release];
NSLog(@"pagesurl retain count is:%d",[pagesUrl retainCount]);
NSLog(@"pagesxmlparser retain count is:%d",[pagesXmlParser retainCount]);
}
Merci d'avance pour toute assistance.
Des fuites dans l'appareil ou dans le simulateur - si des fuites dans le simulateur le testent sur l'appareil - le simulateur vous donnera parfois des résultats incorrects! – deanWombourne