React Native

Gestión de memoria

Memory leaks, cleanup, useEffect cleanup, listeners, timers, manejo de imágenes grandes

20 preguntas de entrevista·
Senior
1

¿Qué es un memory leak en una aplicación React Native?

Respuesta

Un memory leak ocurre cuando objetos en memoria ya no son utilizados por la aplicación pero no pueden ser liberados por el garbage collector porque aún existen referencias a esos objetos. En React Native, esto suele ocurrir con subscriptions sin limpiar, timers que siguen activos después del unmount o closures que capturan referencias obsoletas. Los memory leaks degradan progresivamente el rendimiento y pueden provocar crashes en sesiones largas.

2

¿Cuál es el papel de la función de retorno (cleanup function) en useEffect para la gestión de memoria?

Respuesta

La cleanup function retornada por useEffect se ejecuta antes de que el componente se desmonte o antes de que el efecto se vuelva a ejecutar con nuevas dependencias. Su papel principal es limpiar los recursos asignados por el efecto: cancelar subscriptions, clearTimeout/clearInterval, remove event listeners o abortar las peticiones en curso. Sin esta limpieza, esos recursos siguen existiendo en memoria y pueden intentar actualizar un componente desmontado.

3

¿Por qué es importante usar clearTimeout y clearInterval en la cleanup function de useEffect?

Respuesta

Los timers creados con setTimeout y setInterval siguen ejecutándose incluso después del unmount del componente. Si el callback del timer intenta actualizar el state de un componente desmontado, provoca el warning 'Can't perform a React state update on an unmounted component' y constituye un memory leak. El timer mantiene una referencia al callback y a su closure, impidiendo que el garbage collector libere esos recursos. Usar clearTimeout/clearInterval en el cleanup garantiza la cancelación correcta de esos timers.

4

¿Cómo evitar memory leaks al usar event listeners en React Native?

5

¿Cuál es el impacto de los closures en la gestión de memoria en los componentes de React Native?

+17 preguntas de entrevista

Otros temas de entrevista React Native

Domina React Native para tu próxima entrevista

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

Empieza gratis