让我们说我被迫以这种野蛮的方式入睡。
我不能使用事件(例如setTimeout),它不在问题的约束中,并且已经在前面深入讨论了这样的事情。
function sleep(milliseconds) {
var start = new Date().getTime();
while (new Date().getTime() < start + milliseconds){
// need some NOP here
}
}
我只想知道的是,你能想到我能坚持的东西吗?最好是需要很长时间才能运行的单个语句(可能需要花费一些时间才能运行一个巨大的区域?)
花费大量的CPU时间是好的,即使它在技术上不是NOP。另外,睡过头也没关系。冻结浏览器不是问题。我最感兴趣的是最小化在睡眠持续时间内运行的语句数量,所以基本上:执行时间最长的单个语句并不是真的&#34;做&#34;任何东西。