其他分享
首页 > 其他分享> > 单点任务管理器

单点任务管理器

作者:互联网

单点定时任务的几种实现方式

1、多线程

  就是启个线程,然后写一个for循环,每完成一次sleep一下,示例忽略

2、Timer

  Timer类是JDK自带的定时任务类

public class TimeTaskTest {
    static long count = 0;
    public static void main(String[] args) {
        TimerTask timer4Task = new TimerTask() {
            @Override
            public void run() {
                count++;
                System.out.println(count);
            }
        };
        //创建timer对象设置间隔时间
        Timer timer = new Timer();
        // 间隔天数
        long delay = 0;
        // 间隔毫秒数
        long period = 1000;
        timer.scheduleAtFixedRate(timer4Task, delay, period);
    }
}

 

3、线程池

  线程池则是通过创建一个只有一个线程的线程池,调用延迟方法

 
public class ThreadPoolTest {
    public static void main(String[] args) {
        Runnable runnable = new Runnable() {
            public void run() {
                // task to run goes here
                System.out.println("Hello !!");
            }
        };
        // 创建一个只有一个线程的线程池
        ScheduledExecutorService service = Executors.newSingleThreadScheduledExecutor();
        // 第二个参数为首次执行的延时时间,第三个参数为定时执行的间隔时间
        service.scheduleAtFixedRate(runnable, 1, 1, TimeUnit.SECONDS);
    }

}

4、使用Quartz框架

  Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目。   中文官方文档:https://www.w3cschool.cn/quartz_doc/quartz_doc-h9582d84.html   详细介绍:

标签:static,单点,void,Timer,任务,线程,new,管理器,public
来源: https://www.cnblogs.com/zjh-ds/p/16160754.html