JavaScript that executes can almost arbitrarily long prevent this from happening. This is really annoying if a bug in the web-application you develop causes an infinite loop that doesn't get caught by the execution timeouts. (Workaround: wait really long and hope that the multiple execution timouts that come up after a really lengthy ammount of times allow you to kill enough of the js that is running to be able to reload or kill the browser.