iOS

Memory Management & ARC

ARC, strong/weak/unowned, retain cycles, capture lists, fugas de memoria, profiling

22 preguntas de entrevista·
Senior
1

¿Qué es ARC (Automatic Reference Counting) en iOS?

Respuesta

ARC es un mecanismo automático de gestión de memoria que cuenta las referencias a un objeto. El compilador inserta automáticamente las llamadas retain y release, eliminando la gestión manual. Cuando el conteo de referencias llega a cero, el objeto se desasigna. ARC simplifica considerablemente la programación en iOS al evitar las fugas de memoria comunes.

2

¿Qué es una strong reference en ARC?

Respuesta

Una strong reference incrementa el contador de referencias del objeto apuntado. Por defecto, todas las variables son strong references. El objeto permanece en memoria mientras al menos una strong reference lo apunte. Usar demasiadas strong references puede crear retain cycles que impiden la desasignación.

3

¿Qué es un retain cycle (ciclo de retención)?

Respuesta

Un retain cycle ocurre cuando dos o más objetos mantienen strong references mutuas. Ninguno puede ser desasignado porque cada uno impide que el contador de referencias del otro llegue a cero. Esto crea una fuga de memoria. Los retain cycles se evitan usando weak o unowned references en las relaciones circulares.

4

¿Cuál es el papel de deinit en la gestión de memoria de ARC?

5

¿Cuál es la diferencia entre una weak y una unowned reference?

+19 preguntas de entrevista

Domina iOS para tu próxima entrevista

Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.

Empieza gratis