zoukankan      html  css  js  c++  java
  • schedule() 和 scheduleAtFixedRate() 的区别--转载

    1.  schedule() ,2个参数方法:
    在执行任务时,如果指定的计划执行时间scheduledExecutionTime <= systemCurrentTime,则task会被立即执行。

    2.  schedule() ,3个参数方法:
    在执行任务时,如果指定的计划执行时间scheduledExecutionTime <= systemCurrentTime,则task会被立即执行,之后按period参数固定重复执行。

    3.  scheduleAtFixedRate() ,3个参数方法:
    在执行任务时,如果指定的计划执行时间scheduledExecutionTime<= systemCurrentTime,则task会首先按执行一次;然后按照执行时间、系统当前时间和period参数计算出过期该执行的次数,计算按照: (systemCurrentTime-scheduledExecutionTime)/period,再次执行计算出的次数;最后按period参数固定重复执行。

    4.  schedule() 和scheduleAtFixedRate() 
    schedule()方法更注重保持间隔时间的稳定。
    scheduleAtFixedRate()方法更注重保持执行频率的稳定。

    package com.task;
    
    import java.util.Date;
    import java.util.Timer;
    
    public class TestTask {
    
     /**
      * @param args
      */
     public static void main(String[] args){
      Date crtTime = new Date();
      long crt = crtTime.getTime();
      Timer timer = new Timer();
      
      // 在指定时间执行
      CommonTask task1 = new CommonTask("【任务一】"); 
      timer.schedule(task1, new Date(crt - 1000));
      
      // schedule和scheduleAtFixedRate 
      CommonTask task11 = new CommonTask("【任务二】"); 
      timer.schedule(task11, new Date(crt - 10 * 1000),1000);
      
      CommonTask task12 = new CommonTask("【任务三】"); 
      timer.schedule(task12, new Date(crt - 10 * 1000),1000);
      
      // schedule和scheduleAtFixedRate 
      CommonTask task13 = new CommonTask("【任务四】"); 
      timer.schedule(task13, new Date(crt + 2 * 1000),1000);
      
      CommonTask task14 = new CommonTask("【任务五】"); 
      timer.scheduleAtFixedRate(task14, new Date(crt + 2 * 1000),1000);
     }
    
    }

    原文地址:http://blog.163.com/nice_2012/blog/static/192666148201231635332934/

  • 相关阅读:
    OpenFire源码学习之二:Mina基础知识
    revel + swagger 文档也能互动啦
    Auto Layout 在iOS屏幕适配中的使用
    iOS小技巧
    一种简易的聊天泡泡设置颜色以及添加描边的方式
    做好交互应该克服哪些问题
    jQuery .on() 绑定事件无效
    浅谈iOS的Autolayout
    img 元素无法获取高度的问题
    简易自动化部署服务器集群
  • 原文地址:https://www.cnblogs.com/davidwang456/p/4290732.html
Copyright © 2011-2022 走看看