java定时实现cancel

论坛 期权论坛 脚本     
匿名技术用户   2021-1-2 14:13   11   0

1.新建一个java类,里面新建两个java类,整体的框架如图所示:



2.MyTimer.java代码:

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Timer;

public class MyTimer {

 public static void main(String[] args) {
  Timer timer = new Timer();
  MyTimerTask myTimerTask = new MyTimerTask("Number 1.");
  Calendar calendar = Calendar.getInstance();
  SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  System.out.println(sf.format(calendar.getTime()));
  myTimerTask.setName("schedule");
  timer.schedule(myTimerTask, 3000, 2000);
 }

}

3.MyTimerTask.java代码:
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.TimerTask;

public class MyTimerTask extends TimerTask {

 private static String name;
 private static Integer count=0;

 public MyTimerTask(String inputName) {
  name = inputName;
 }

 @Override
 public void run() {
  if (count < 3) {
   Calendar calendar = Calendar.getInstance();
   SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
   System.out.println("Current exec time is:" + sf.format(calendar.getTime()));
   System.out.println("Current exec name is:" + name);
  }else {
   cancel();
   System.out.println("Task cancle");
  }
  count ++;
 }

 public static String getName() {
  return name;
 }

 public static void setName(String name) {
  MyTimerTask.name = name;
 }

}

4.运行结果:


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP