Question

L'iPhone prend-il en charge la récupération de place? Si tel est le cas, quels sont les autres moyens d'effectuer les opérations effectuées à l'aide de la combinaison + alloc et -init :

NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:xmlData];
UIImage *originalImage = [[UIImage alloc] initWithData:data];
detailViewController = [[[DetailViewController alloc] initWithNibName:@"DetailView bundle:[NSBundle mainBundle]] autorelease];

... et d'autres commandes. Merci d’avance pour toute aide ou directive que vous pouvez fournir.

Était-ce utile?

La solution

Non. Le ramassage des ordures représente une surcharge trop importante pour la durée de vie de la batterie, etc. de l'appareil.

Vous devez toujours programmer avec un motif alloc / release à l'esprit.

NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:xmlData];
...
[xmlParser release];

ou (ne convient pas à toutes les situations)

NSXMLParser *xmlParser [[[NSXMLParser alloc] initWithData:xmlData] autorelease];

J'espère que ça aide!

Autres conseils

Non, la récupération de place n'est pas prise en charge sur l'iPhone pour le moment. Vous devez utiliser alloc / release / autorelease .

Notez que l'absence de garbage collection signifie que les références faibles ne sont pas non plus prises en charge.

Mono touch a un ramassage des ordures et fonctionne sur le système d'exploitation iPhone.

Dans toute la discussion, personne ne dit à propos du langage Java. En Java, la collection Garbage est intégrée au langage, de sorte qu'elle est implicitement disponible dans Android, J2ME et Blackberry :), où, comme dans Objective-C, elle est facultative. donc, sur iPhone, le CPG n'est pas disponible.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top