2009-08-06 10 views
10

Estoy creando un NSArray dentro de un método, así que tengo que darlo por vencido cuando lo haya terminado. Paso esta matriz al¿Debo retener un objeto antes de pasarlo a -performSelector: withObject: afterDelay :?

- (void)performSelector:(SEL)aSelector withObject:(id)anArgument afterDelay:(NSTimeInterval)delay 

método. Después de eso, ya no necesito el arreglo en mi método que llama a este performSelector: withObject: afterDelay :.

El documento no indica si se va a conservar unArgumento, por lo que me pregunto si tuve que soltarlo o conservarlo para seguir con vida. ¿Qué piensas?

+2

Comentario rápido: liberación automática no ayudaría de todos modos porque quién sabe cuánto tiempo sería la demora. Casi con toda seguridad será más largo de lo que tarda el ciclo de ejecución en completarse. –

+1

'-performSelector: withObject: afterDelay:' se garantiza que se ejecutará en el siguiente ciclo del ciclo de ejecución (incluso si el retraso es de 0.0 segundos), lo que significa que el conjunto de autorrelease se vaciará. –

Respuesta

Cuestiones relacionadas