1
Here我看到的JavaScript死锁和验证码:JavaScript的僵局
var loop = true,
block = setTimeout(function(){loop = false}, 1);
while(loop);
这绝对是无限循环并导致浏览器冻结。据说deadlock is created when one operation wait another one to be executed and vice-versa
。
我的问题是,除了那种情况下发生死锁以及避免它们的方式?
'setTimeout'是为了处理这些过时的代码结构,其中一个会浪费一些循环来使其运行速度变慢。计算机甚至有硬件调度程序在硬件级别执行此操作,以便CPU可以睡眠一点点并节省电力。 – Zdenek 2013-05-13 20:13:21