• javascript中实现sleep的两种方式


      最近在js中要使用到类似于C++中的sleep函数(让cpu休眠)。但是js是不可能让cpu休眠,所以可以通过下面的两种方式模拟sleep函数。

      方式一:使用setTimeout函数代替。如果在一个循环中使用,那么先设置一个起始时间为0,每次设置的setTimeout时间不同,就会达到隔一段时间执行一个动作,再隔一段时间执行一个动作的效果。举例如下(每隔不固定的时间走到下一个预置点):

    function StartPatrol() {
        var time = 0;
        $("#PatrolPresetList").children("div").each(function() {
            var oChildren = $(this).children("span");
            var iPresetId = parseInt(oChildren.eq(2).attr("id"), 10);
            var iPatrolTime = parseInt(oChildren.eq(3).text().split("s")[0], 10);
            var iPatrolSpeed = oChildren.eq(4).text();
            
            setTimeout(function(){GotoPreset(iPresetId);},time);
            time = time + iPatrolTime * 1000;
        });
    }

      方式二:死循环,当前时间减去开始的时间,直到时间到了为止。这种方式不推荐,因为这种方式的cpu占用太多。代码如下:

    function   sleep(n)   
    {   
        var   start=new   Date().getTime();   
        while(true)   if(new   Date().getTime()-start> n)   break;   
    } 
  • 相关阅读:
    2016521-Java-第八周学习总结
    20165221 第七周学习总结
    20165221—JAVA第六周学习心得
    20165221 JAVA第五周学习心得
    20165221 JAVA第四周学习心得
    结对学习创意照
    20165331 第三周学习总结
    20165331 课下作业
    20165331 第二周学习总结
    20165331 第一周学习总结
  • 原文地址:https://www.cnblogs.com/matthew-2013/p/3499490.html
Copyright © 2020-2023  润新知