javascript set interval run como thread separado?

Eu quero usar um temporizador como um fallback no caso de eu acabar em um loop infinito. Parece que o intervalo definido é o caminho certo para fazer isso. No entanto, não está funcionando para mim.

Da minha pesquisa, parece que setInterval deve ser executado em um thread separado em segundo plano, mas eu não vejo isso.

Por que esse comportamento está acontecendo? E como resolvo isso?

var time = 0;
window.setInterval(function(){time++;}, 1000);
while (true) {
    //stuff done
    if (time >= 5) {
        break;
    }
}

questionAnswers(3)

yourAnswerToTheQuestion