Junior — Middle
¿Puede explicar qué significa una referencia débil en la gestión de memoria?
sobes.tech AI
Respuesta de la IA
Una referencia débil (weak reference) es una referencia a un objeto en memoria que no impide que el recolector de basura elimine ese objeto si ya no hay referencias fuertes a él.
En la gestión de memoria, las referencias débiles son útiles cuando se necesita mantener una referencia a un objeto, pero sin retenerlo en memoria de manera artificial. Si el objeto ya no es necesario en otros lugares, será eliminado y la referencia débil se invalidará.
Por ejemplo, en Android, las referencias débiles se usan a menudo para almacenar en caché o para referencias a contextos (Context) desde objetos de larga duración, para evitar fugas de memoria.
Ejemplo en Java:
WeakReference<MyObject> weakRef = new WeakReference<>(myObject);
// Si myObject ya no tiene referencias fuertes, puede ser eliminado,
// y weakRef.get() devolverá null.