2010-08-12 5 views
0

je suis la fuite de mémoire dans la suite segment de code quand je courais mon application avec un instrument ..fuite de mémoire dans Xml Parser l'intérieur connectionDidFinishLoading

-(void)connectionDidFinishLoading:conn{ 
//[self.conn release]; 
NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:myData]; 
[xmlParser setDelegate:self]; 
[xmlParser parse]; 
[xmlParser release]; 

}

mais je ne pourrais pas faire exactement où la fuite se produit .. Toutes les suggestions

Répondre

0

presse myData après avoir lancé l'analyseur (uniquement s'il est un objet autorelease):

NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:myData]; 
[myData release]; 

Vous allouez également un objet NSXMLParser. Vous pouvez le libérer automatiquement:

NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:myData]; 

Mais cela pourrait libérer l'objet analyseur avant que vous ayez fini de l'utiliser.

Vous pouvez donc vouloir le libérer manuellement une fois l'analyse terminée, auquel cas vous devrez probablement le déclarer dans le fichier .h.