curso programacion iphone

Los 3 mandamientos de la gestión de memoria en Objective C y Cocoa.

  1. : Para las variables de instancia, usa SIEMPRE propiedades autogeneradas (@property y @synthesize). Esto es todo lo que tienes que recordar para las variables de instancia.
  2. : Para los objetos temporales, si los has creado llamando a alloc o a copy, eres responsable de llamar a release o autorelease al final del método en el que los has creado.
  3. : Si has creado ese objeto temporal de cualquier otra forma que no sea con alloc o copy, no tienes que hacer nada.
 

3 Responses to Los Tres Mandamientos de La Gestión de Memoria en Objective C y Cocoa

  1. [...] si tenemos esto claro, ya podemos pasar a las 3 reglas que impedirán que tengamos filtrados de memoria (objetos que nunca son destruidos), o pero aún, errores de acceso (intentar usar un objeto que ya [...]

  2. Linoll says:

    Para complementar, hay ocaciones en que necesitamos realizar operaciones las cuales generan muchos objetos temporales, que no esta en nuestras manos liberarlos, por ejemplo llamando en nuestra operacion muchas veces a [NSString substringWithRange:] que genera un objeto NSString temporal, entonces le echamos mano a la clase NSAutoreleasePool en caso que nos interese retornar un de los objeto temporales que se generaron en la operacion, o en caso contrario usamos la comoda instruccion @autoreleasepool{ statements }. Todo esto con el fin de liberar esos objetos temporales una vez terminemos nuestra operacion

    • frr149 says:

      Aun mantengo este post por motivos históricos, hoy por hoy recomendaría a todos usar ARC y olvidarse de la gestión manual de la memoria.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>