我如何使 UI 线程连续 运行

How would I make the UI thread run continuously

据我了解,因为JavaScript是单线程的,像

这样的动作
setTimeout(0, function() { alert("Hello"); });

不会阻塞 UI 线程,会一直等到 UI 线程中断,以便它可以 "jump in" 和 运行。这是古老的JavaScript说法

"When there's nothing to do, check the [callback] queue. But only check the queue when there's nothing to do."

我的意思是,谁能给我举个例子,浏览器总是有事情要做,因此回调队列中的异步方法永远不会执行?还是我对事件循环的理解完全扭曲了?

正如您所指出的,回调是在浏览器无事可做时完成的。如果回调永远不会 运行 ,用户会认为浏览器没有响应。这是一种可能的情况,但不太可能被视为正常情况。

假设您的超时回调会发生,就可以很好地实现您的代码。你想做的是创建一个实现,该实现可以容忍随时间变化发生的回调。差异将与处理其他回调和事件所花费的最长时间有关。