的TimerTask()没有做什么应该,只能打印一次

问题描述:

public static void main(String[] args) { 

     Timer ttt = new Timer(); 
     TimerTask test = new TimerTask() { 

      @Override 
      public void run() { 

       System.out.println("IN"); 
         } 
       }; 

     ttt.schedule(test, 1000); 
} 

这本来就是打印出“IN”每秒但它仅打印一次。有小费吗?谢谢的TimerTask()没有做什么应该,只能打印一次

什么

您使用的schedule的一次性版本。简单地使用接受的间隔期间overloaded version

ttt.schedule(test, 0, 1000); 

除了:较新ExecutorService优于java.util.Timer。 Timer只有一个执行线程,所以长时间运行的任务可以延迟其他任务。 ExecutorService可以使用线程池进行操作。讨论更多here

+0

非常感谢你;) – user1071611 2013-04-20 00:31:26