1 :固定时间后执行一次任务:1000毫秒后执行任务(只执行一次)
2: 5000毫秒后,执行任务,以后每隔1000毫秒再执行一次任务(无限执行)
3:交替再生:任务2秒4秒交替的执行(无限执行),
4: 创建两个循环交替任务:2秒后,A任务执行。 A任务里面创建一个B任务4秒后执行,B任务里面又创建一个A任务2秒后执行,如此往复。
1,2,3代码:
[java]
view plain
copy
- import java.util.Date;
- import java.util.Timer;
- import java.util.TimerTask;
- /**
- * @author Administrator @zsw 2012-7-19 下午04:37:19
- */
- public class TraditionalTimer {
- public static void main(String[] args) {
- //1:
- // test1();
- //2:
- // test2();
- //3:
- test3();
- //用于打印时间秒数
- while (true) {
- System.out.println(new Date().getSeconds());
- try {
- Thread.sleep(1000);
- } catch (InterruptedException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
- //1:固定时间后执行一次任务:1000毫秒后执行任务(只执行一次)
- public static void test1() {
- new Timer().schedule(new TimerTask() {
- @Override
- public void run() {
- // TODO Auto-generated method stub
- System.out.println("bombing!");
- }
- }, 1000);
- }
- // 2:5000毫秒后,执行任务,以后每隔1000毫秒再执行一次任务(无限执行)
- public static void test2() {
- new Timer().schedule(new TimerTask() {
- @Override
- public void run() {
- // TODO Auto-generated method stub
- System.out.println("bombing!");
- }
- }, 5000, 1000);
- }
- //3:交替再生:任务2秒4秒交替的执行(无限执行),
- static int count = 0;
- public static void test3() {
- class MyTimerTask extends TimerTask {
- @Override
- public void run() {
- count = (count + 1) % 2;
- System.out.println("bombing!");
- new Timer().schedule(new MyTimerTask(), 2000 + count * 2000);
- }
- }
- new Timer().schedule(new MyTimerTask(), 2000);
- }
- }
4代码
[java]
view plain
copy
- import java.util.Date;
- import java.util.Timer;
- import java.util.TimerTask;
- /**
- * @author Administrator @zsw 2012-7-20 下午08:08:42
- */
- public class TraditionalTime2 {
- /*
- * 创建两个循环交替任务:2秒后,A任务执行。
- * A任务里面创建一个B任务4秒后执行,B任务里面又创建一个A任务2秒后执行,,如此往复。
- *
- */
- public static void main(String[] args) {
- TraditionalTime2 t2=new TraditionalTime2();
- new Timer().schedule(t2.new A(), 2000);
- //用于打印时间秒数
- while (true) {
- System.out.println(new Date().getSeconds());
- try {
- Thread.sleep(1000);
- } catch (InterruptedException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
- class A extends TimerTask {
- @Override
- public void run() {
- System.out.println("A bombing!");
- new Timer().schedule(new B(), 4000);
- }
- }
- class B extends TimerTask {
- @Override
- public void run() {
- System.out.println("B bombing!");
- new Timer().schedule(new A(), 2000);
- }
- }
- }