需要解决的问题是:
TimerTask1在某个时间开始由Timer调度,到某个时间时需要取消TimerTask1。请说个思路!

解决方案 »

  1.   

    看能不能再定时执行timer.cancle();吧.
      

  2.   

    由于怕思路描述的不清楚,就简单的举个例子吧!这个例子是在程序运行1秒后,执行每个两秒打印A,五秒后就打印"停止打印A",结束程序!public Test{
       public static void main(String[] args){
                   /*java.io.File dir=new java.io.File("F:\\1");
                    dir.mkdir();
                    System.out.println("ok");*/
             final Timer t = new Timer();
             t.schedule(new TimerTask(){
             public void run(){
            System.out.println("A");
             }
             },1000,2000);
    t.schedule(new TimerTask(){
    public void run(){
    System.out.println("停止打印A");
    t.cancel();
    }
    },1000*5);
    }}
      

  3.   

    (为你方便你好看一点,重新整理一下!)
    由于怕思路描述的不清楚,就简单的举个例子吧!这个例子是在程序运行1秒后,执行每个两秒打印A,五秒后就打印"停止打印A",结束程序!public Test{
       public static void main(String[] args){
             final Timer t = new Timer();
             t.schedule(new TimerTask(){
             public void run(){
            System.out.println("A");
             }
             },1000,2000);
    t.schedule(new TimerTask(){
    public void run(){
      System.out.println("停止打印A");
      t.cancel();
    }
    },1000*5);
       }}
      

  4.   

    谢谢上面的朋友解答,上面的代码是直接cancel掉Timer,我的目的是cancel那个TimerTask,一个Timer可以加许多个TimerTask,所有在代码里面不想为每一个TimerTask都new 一个Timer。
    觉得写一个代码利用工厂来管理TimerTask,这样可能要好一些,目的已经实现,不过还是谢谢上面的朋友们!!!