zoukankan      html  css  js  c++  java
  • ScheduledExecutorService

    项目中用到了ScheduledExecutorService这里简单写了个demo留以后复习

    job工作

    package org.ScheduledExecutorService;
    
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    public class RunnableJob implements Runnable{
    
        private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
        
        @Override
        public void run() {
    
            try {
                Thread.sleep(5000);
            } catch (Exception e) {
                e.printStackTrace();
            }
            System.out.println("The current time is " + sdf.format(new Date()) + ".");
        }
    
    }

    测试类

    package org.ScheduledExecutorService;
    
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import java.util.concurrent.Callable;
    import java.util.concurrent.Executors;
    import java.util.concurrent.ScheduledExecutorService;
    import java.util.concurrent.TimeUnit;
    
    public class ScheduledExecutorServiceTest {
    
        private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
        
        private static ScheduledExecutorService executor = Executors.newScheduledThreadPool(10);
    
        /**
         * 初始化延迟1s开始执行,每隔3s重新执行一次任务。
         */
        public void scheduleAtFixedRateTest() {
            executor.scheduleAtFixedRate(new RunnableJob(), 1, 3, TimeUnit.SECONDS);
        }
        
        /**
         * 初始化时延时1s开始执行,本次执行结束后延迟4s开始下次执行。
         */
        public void scheduleWithFixedDelayTest(){
            executor.scheduleWithFixedDelay(new RunnableJob(), 1, 4, TimeUnit.SECONDS);
        }
        
        public void scheduleRunnableTest(){
            executor.schedule(new RunnableJob(), 3, TimeUnit.SECONDS);
        }
        
        public void scheduleTest(){
    /*        executor.schedule(new Callable<V>() {
            }, delay, unit)*/
        }
        public static void main(String[] args) {
            ScheduledExecutorServiceTest sest = new ScheduledExecutorServiceTest();
            System.out.println("start time is " + sdf.format(new Date()));
        //    sest.scheduleAtFixedRateTest();
        //    sest.scheduleWithFixedDelayTest();
            sest.scheduleRunnableTest();
        }
    }
  • 相关阅读:
    Ubuntu 16.04安装迅雷(兼容性不高)
    Ubuntu 16.04安装QQ(不一定成功)
    Ubuntu查看隐藏文件夹的方法
    Ubuntu下非常规方法安装绿色软件(压缩包)
    Ubuntu下常规方法安装软件
    Ubuntu 16.04下截图工具Shutter
    java中 awt Graphics2D
    Vue2.0总结———vue使用过程常见的一些问题
    MySQL 中隔离级别 RC 与 RR 的区别
    DBAplus社群线上分享----Sharding-Sphere之Proxy初探
  • 原文地址:https://www.cnblogs.com/vincentren/p/5648504.html
Copyright © 2011-2022 走看看