如何定期调用asyncTasks

时间:2013-06-10 20:13:46

标签: java android multithreading android-asynctask

我有两个AsyncTasks正在进行网络操作。我想定期打电话给他们(比如一分钟后)。我怎么做?我不认为我可以在UI线程上做到这一点。我需要创建一个新线程吗?没有AlarmManager / Service可以实现这个吗?

基本上我想在一分钟后定期检出这两个陈述。

new UploadAsyncTask().execute();
new DownloadAsyncTask().execute();

谢谢

1 个答案:

答案 0 :(得分:16)

只需使用计时器。

final Handler handler = new Handler();
Timer timer = new Timer();
TimerTask task = new TimerTask() {       
     @Override
     public void run() {
       handler.post(new Runnable() {
          public void run() {  
             new UploadAsyncTask().execute();
             new DownloadAsyncTask().execute();
          }
        });
      }
};
timer.schedule(task, 0, 1000); //it executes this every 1000ms