本文来自:安卓航班网

  在Android平台中需要反复按周期执行方法可以使用Java上自带的TimerTask类,TimerTask相对于Thread来说对于资源消耗的更低,除了使用Android自带的AlarmManager使用Timer定时器是一种更好的解决方法。 我们需要引入import java.util.Timer; 和 import java.util.TimerTask;
private Timer  mTimer = new Timer(true);
private TimerTask mTimerTask;

    mTimerTask = new TimerTask()
    {
      public void run()
      {
       Log.v("android123","cwj");
      }         
     };
      
     mTimer.schedule(mTimerTask, 5000,1000);  //在1秒后每5秒执行一次定时器中的方法,比如本文为调用log.v打印输出。
  如果想取消可以调用下面方法,取消定时器的执行
   while(!mTimerTask.cancel());
      mTimer.cancel();
   最后提示大家,如果处理的东西比较耗时还是开个线程比较好,Timer还是会阻塞主线程的执行,更像是一种消息的执行方式。当然比Handler的postDelay等方法更适合处理计划任务。

原文地址:http://www.apkway.com/forum.php?mod=viewthread&tid=2614&extra=page%3D2

posted on 2011-08-08 20:14  泉と緣  阅读(288)  评论(0编辑  收藏  举报