Tengo un componente nativo de reacción que ejecuta una función asíncrona en un temporizador de intervalos. Al probar esto en un teléfono Android antiguo, me sorprendió ver algunos problemas graves de rendimiento.
Los botones de la interfaz de usuario no responden por completo mientras se ejecuta la función testIntervalAsync, pero, curiosamente, el componente ScrollView anidado responde perfectamente al tacto (todavía se puede desplazar).
Soy bastante nuevo en reaccionar de forma nativa, entonces, ¿alguien podría darme una idea de por qué funciona tan lentamente?
const TestScreen = ({}: TestScreenProps) => { ... useEffect(() => { const interval = setInterval( async () => { testIntervalAsync (); }, 1000); const testIntervalAsync = async () => { for(let i = 0; i < 5000; i++ ) console.log("Test interval: ", i); }; return (() => { clearInterval(interval); }) }, []); return ( <Box> ... <ScrollView> ... </ScrollView> ... </Box> ); };