zoukankan      html  css  js  c++  java
  • java指定某个时间点周期性执行

    下面的例子是在12:30:00开始每12个小时执行一次
     
    final ScheduledExecutorService scheduledExecutor = Executors.newSingleThreadScheduledExecutor();
    
    String executeTime="12:30:00";
    
    long periodTime=43200000;
    
    long initialDelay=0;
    
    try {
    
        DateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    
        DateFormat dayFormat=new SimpleDateFormat("yyyy-MM-dd");				
    
        Date startTime = dateFormat.parse(dayFormat.format(new Date())+" "+executeTime);
    
        initialDelay=startTime.getTime()-new Date().getTime();
    
        if (initialDelay < 0) {
    
    	initialDelay = periodTime + initialDelay;
    
        }
    
    } catch (ParseException e) {
    
        logger.error("Calculating the initial delay time :",e);		
    
    }
    
    scheduledExecutor.scheduleAtFixedRate(new getTenantPbxIpsTask(), initialDelay, periodTime, TimeUnit.MILLISECONDS);
  • 相关阅读:
    JavaSE_11_File类、递归
    JavaSE_10_IO流
    leyou_07_对数据的操作
    JavaSE_09_Map
    JavaSE_08_Collections常用功能
    java 22
    java 22
    java 22
    java 22
    java 22
  • 原文地址:https://www.cnblogs.com/tzp_8/p/2381605.html
Copyright © 2011-2022 走看看