Chrome: intervalos / intervalos suspensos nas guias em segundo plano?

Eu estava testando a precisão desetTimeout usandoesse test. Agora eu notei que (como esperado)setTimeout não é muito preciso, mas para a maioria dos aparelhos não é dramaticamente impreciso. Agora, se eu executar o teste no Chrome e deixá-lo em uma guia em segundo plano (alternando para outra guia e navegando lá), retornando ao teste e inspecionando os resultados (se o teste terminar), eles serão alterados drasticamente. Parece que os tempos limite estiveram muito mais lentos. Testado no FF4 ou IE9, isso não ocorreu.

Por isso, parece que o Chrome suspende ou pelo menos diminui a execução do javascript em uma guia que não tem foco. Não foi possível encontrar muito na rede sobre o assunto. Isso significa que não podemos executar tarefas em segundo plano, como, por exemplo, verificar periodicamente em um servidor usando chamadas XHR esetInterval (Suspeito de ver o mesmo comportamento parasetInterval, escreverá um teste se o tempo estiver comigo

Alguém encontrou isso? Haveria uma solução alternativa para essa suspensão / desaceleração? Você chamaria isso de bug e devo arquivá-lo como tal?

questionAnswers(5)

yourAnswerToTheQuestion