• 6.21Java多线程并发高级主题_定时调度问题


    6.21Java多线程并发高级主题_定时调度问题

    Java多线程任务定时调度类和方法

    Timer类
    • Timer:类似闹钟的功能,本身实现的就是一个线程

    TimerTask类
    • TimerTask:一个抽象类,实现了Runnable接口,具备多线程能力

    Timer类说明

    • 供将来在后台线程中执行的功能。 任务可以安排一次执行,或定期重复执行。

    构造方法:

    Constructor描述
    Timer() 创建一个新的计时器
    Timer(boolean isDaemon) 创建一个新的定时器,其相关线程可以指定为run as a daemon
    Timer(String name) 创建一个新的定时器,其相关线程具有指定的名称
    Timer(String name, boolean isDaemon) 创建一个新的定时器,其相关线程具有指定的名称,可以指定为run as a daemon

    重点方法:

    方法返回类型方法名称方法描述
    void schedule(计划)(TimerTask task(什么任务?), long delay(多少时间、毫秒以后执行任务)) 在指定的延迟之后安排指定的任务执行
    void schedule(TimeTask task, long delay, long period(隔多久时间执行的意思)) 在指定的延迟之后开始,重新执行固定延迟执行的指定任务
    void schedule(TimerTask task, Date Time) 在指定的时间安排执行一次任务
    void schedule(TimerTask task, Date firstTime, , long period) 从指定的时间开始,对指定的任务执行重复的固定延迟执行(执行多次任务---注意和上面多久执行一次进行区分)

    TimerTask类说明

    • 可以由计时器进行一次性或重复执行的任务。

    实例
    package iostudy.others;

    import java.util.*;

    /**
    * 任务定时调度,借助Timer类和TimerTask类
    * @since JDK 1.8
    * @date 2021/6/21
    * @author Lucifer
    */
    public class TimerTestNo1 {
       public static void main(String[] args) {

           /*创建Timer类对象*/
           Timer timer = new Timer();

           /*调用该类下的构造方法*/
    //       timer.schedule(new MyTask(), 10000);
    //       timer.schedule(new MyTask(), 1000, 200);
           Calendar calendar = new GregorianCalendar(2021, 6, 21, 19, 30, 00);
           timer.schedule(new MyTask(), calendar.getTime(), 200);
      }
    }

    /**
    * 任务类、工作类。多线程
    */
    class  MyTask extends TimerTask{

       /*重写run方法*/
       @Override
       public void run(){

           /*循环打印*/
           for (int i=0; i<10; i++){
               System.out.println("Have a rest!!!");
          }
           System.out.println("-----end-----");
      }
    }

     

    It's a lonely road!!!
  • 相关阅读:
    增删改查
    兴趣爱好
    兴趣爱好界面
    购物商城
    计算器
    安卓第四周作业
    安卓第一周作业
    第十五周作业
    十三周作业-集合
    第十三周上机练习
  • 原文地址:https://www.cnblogs.com/JunkingBoy/p/14915375.html
Copyright © 2020-2023  润新知