Prenons l'exemple de code ObjC suivant:Est-ce une bonne idée de conserver/libérer les paramètres de la méthode dans Objective-C?
- (void)doStuffWithString:(NSString *)someParam {
// Do stuff with someParam
}
Si ce code était en cours d'exécution dans une application multi-thread, serait-il une bonne idée de conserver/libérer someParam
? Plus précisément, je pense à des scénarios dans lesquels le paramètre transmis est un objet singleton partagé par de nombreux threads. Est-ce que ce qui suit est plus sûr, par exemple?
- (void)doStuffWithString:(NSString *)someParam {
[stringParam retain];
// Do stuff with someParam
[stringParam release];
}