dlaczego Javascript SetTimeout () nie jest wielowątkowy

Mam test:

HTML:

<div id="f1">Empty</div>
<div id="f2">Empty</div>

​

js:

var s1 = function() {
&nbsp; &nbsp;&nbsp;for (i = 1; i < 1000000000; i++) {
&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;var b = i * i;
&nbsp; &nbsp;&nbsp;}
&nbsp; &nbsp;&nbsp;$('#f1').html('Set');
}

var s2 = function() {
&nbsp; &nbsp;&nbsp;if ($('#f1').html() == 'Empty') {
&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;$('#f2').html('Multi Thread');
&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;return;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;
&nbsp; &nbsp;&nbsp;};
&nbsp; &nbsp;&nbsp;$('#f2').html('One Thread');
}

setTimeout(s2,110);
setTimeout(s1,100);​

Czy istnieje jakiś prawdziwy powód, dla którego setTimeOut () nie działa w różnych wątkach, a nie jak model zdarzeń?

jsfiddle