任务调度(一):线程TimerTaskTimer

it2023-08-22  68

1、什么是任务调度

2、JDK任务调度工具
3、线程
public class Demo01 { static long count = 0; public static void main(String[] args) { Runnable runnable = new Runnable() { @Override public void run() { while (true) { try { Thread.sleep(1000); count++; System.out.println(count); } catch (Exception e) { } } } }; Thread thread = new Thread(runnable); thread.start(); } }

4、TimerTask

package cn.enjoy.jobs.feiji; import org.junit.Test; import java.util.Timer; import java.util.TimerTask; /** * 使用TimerTask类实现定时任务 */ public class Demo02 { static long count = 0; @Test public void test1() throws InterruptedException { TimerTask timerTask = new TimerTask() { @Override public void run() { count++; System.out.println(count); } }; Timer timer = new Timer(); // 延迟 long delay = 0; // 秒数 long period = 1000; timer.scheduleAtFixedRate(timerTask, delay, period); Thread.sleep(Integer.MAX_VALUE); } @Test public void test2() throws InterruptedException { TimerTask timerTask = new TimerTask() { @Override public void run() { count++; System.out.println(count); } }; TimerTask timerTask2 = new TimerTask() { @Override public void run() { try { Thread.sleep(5000); } catch (InterruptedException e) { e.printStackTrace(); } count++; System.out.println(count); } }; Timer timer = new Timer(); long delay = 0; // 秒数 long period = 1000; timer.scheduleAtFixedRate(timerTask, delay, period); timer.scheduleAtFixedRate(timerTask2, delay, period); Thread.sleep(Integer.MAX_VALUE); } @Test public void test3() throws InterruptedException { TimerTask timerTask = new TimerTask() { @Override public void run() { count++; System.out.println(count); } }; TimerTask timerTask3 = new TimerTask() { @Override public void run() { count++; System.out.println(count); if(count ==2) { int i = 10/0; } } }; Timer timer = new Timer(); // 天数 long delay = 0; // 秒数 long period = 1000; timer.scheduleAtFixedRate(timerTask, delay, period); timer.scheduleAtFixedRate(timerTask3, delay, period); Thread.sleep(Integer.MAX_VALUE); } }

下一章:任务调度(二):ScheduledExecutorService

最新回复(0)