Junior — Middle
¿Cómo afecta el uso de referencias débiles a la gestión del ciclo de vida de los objetos en la memoria?
sobes.tech AI
Respuesta de la IA
Las referencias débiles (weak references) en iOS (y en la gestión de memoria en general) permiten referirse a un objeto sin impedir su eliminación por el recolector de basura o por el sistema ARC (Contador de Referencias Automático). Si un objeto solo es accesible a través de referencias débiles, puede ser liberado de la memoria.
Esto ayuda a evitar dependencias cíclicas y fugas de memoria, ya que una referencia débil no incrementa el contador de referencias del objeto.
Ejemplo en Swift:
class Person {
var name: String
weak var delegate: SomeDelegate?
init(name: String) {
self.name = name
}
}
Aquí, delegate es una referencia débil para evitar mantener el objeto y posibles ciclos.