定时器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了定时器相关的知识,希望对你有一定的参考价值。

 定时器: 程序按指定的时间间隔自动反复执行一项任务

       分类:

     周期性定时器: 让程序按照指定时间间隔反复执行同一项任务

               1.定义任务函数 function task(){....}

               2. 启动定时器timer=setInterval(task,interval);单位为ms

                           强调:1. 任务函数以回调方式传入定时器,不加()

                                    2. interval指每次执行之间的时间间隔

             3. 停止定时器:

      1. 用户手动停止: clearInterval(timer)

                强调: 停止定时器必须用序号。所以一般启动定时器时多要先获取定时器序号备用。

                       停止定时器之后,伴随的都是清空timer。timer=null;

              2. 自动停止: 在任务函数的结尾,都要判断是否达到临界值。如果达到临界值,就停止定时器。

    一次性定时器: 让程序先等待一段时间,然后自动执行一次,执行后,自动停止。

         1. function task(){....}

         2. 启动定时器: timer=setTimeout(task,wait); 单位ms

         3. 停止定时器: 停止等待       clearTimeout(timer)

 

   其实,setInterval/setTimeout的第一个参数,可以是一个字符串格式的js语句。

   

    注意:回调函数中的this默认都只window

      回调对列中的函数,必须等到主程序(ECS)中执行完了才能执行。

    for(var i=0;i<3;i++){

              setTimeout("console.log(i)",0);

            }  //3,3,3

  

 

 

     

   

   

以上是关于定时器的主要内容,如果未能解决你的问题,请参考以下文章

MFC的定时器OnTimer

Linux内核定时器

java定时器的使用(Timer)

js定时器的应用

Linux--内核定时器

基础入门_Python-模块和包.深入Celery之Beat触发定时/周期性任务?