目前我在写一个关于定制任务的程序,第一个任务每隔5分种执行一次,第二个每隔15分钟执行一次。
我想可以通过两种方式定义,
1.定义一个timer,将两个任务分别加入timer.schedule(task)中;2.定义两个TimerTask ,每个TimerTask 中有个成员变量timer,每个timer.schedule(this);好象这两种情况都应该可以实现。目前我想知道执行过程中有什么区别。比如在第一种情况下,第一个任务的执行是否影响第二个任务的执行
第二种情况又将如何
多谢。

解决方案 »

  1.   

    1. Timer有个队列,可以存放多个任务,相互不影响
    2. 那就是每个Timer只处理一个任务,更不会影响
      

  2.   

    用Timer与TimerTask在夏令时开始和结束时会出现时间跳跃
      

  3.   

    Timer是一种定时器工具,用来在一个后台线程计划执行指定任务。它可以计划执行一个任务一次或反复多次。
    TimerTask一个抽象类,它的子类代表一个可以被Timer计划的任务每一个Timer仅对应唯一一个线程。 
    Timer不保证任务执行的十分精确。 
    Timer类是线程安全的。注意:同一个TimerTask不能加入到同个Timer中