Creé una página HTML vacía con un simple setInterval() que activa una llamada AJAX, a través de window.fetch() , cada 30 segundos, indefinidamente. Sin embargo, en Chrome, si dejo mi computadora por 24 horas y vuelvo a ella, noto que en algún momento, las llamadas AJAX dejaron de dispararse.
Tenga en cuenta que esta computadora no entra en modo de suspensión, hibernación, bloqueo de pantalla, etc. En otras palabras, me alejo del monitor, vuelvo al día siguiente, veo exactamente la misma pantalla en la que la dejé el día anterior y, sin embargo, la pestaña Red en el depurador de Chrome muestra que el navegador dejó de realizar las llamadas AJAX en algún momento.
Lo que me pregunto es, ¿los navegadores tienen algún tipo de proceso interno o gestión de subprocesos en el que ponen las pestañas "inactivas" en reposo y dejan de ejecutar llamadas de red, o dejan de ejecutar intervalos y/o tiempos de espera de JavaScript? ¿Hay algún tipo de conservación de recursos/gestión de memoria que hacen los navegadores modernos, donde ponen pestañas para "dormir", que podría explicar esto?