Android:multiplewithasynctask

Android:multiplewithasynctask,android,time,android-asynctask,Android,Time,Android Asynctask,我正在通过一本书学习Android,我想确认一下 根据本书使用AsyncTask时,它是这样的: main class { new AddStringTask().execute(); } class AddStringTask extends AsyncTask<Void, String, Void> { @Override protected Void doInBackground(Void... unused) { // Do something

我正在通过一本书学习Android,我想确认一下

根据本书使用AsyncTask时,它是这样的:

main class
{
 new AddStringTask().execute(); 
  } 

  class AddStringTask extends AsyncTask<Void, String, Void> { 
@Override 
protected Void doInBackground(Void... unused) { 
  // Do something
    SystemClock.sleep(333);
      return(something); 
    } 
 @Override 
    protected void onProgressUpdate(String... item) { 
        // update something

} 
      } 
它创建了一个后台线程来做一些事情。 所以如果我想要更多的线程,例如在不同的时间触发3005001000毫秒,那么我需要 要创建更多的子类。。。是吗

或者,是否有某种方法可以只使用这个子类在不同的时间触发多个线程

谢谢

然后我需要制作更多的子类。。。是吗

不是真的

通过创建新的AddStringTask实例,可以再次执行相同的AsyncTask。这是因为它将是一个不同于其他实例的新实例,并且每个实例都有自己的线程。它们不是相互依存的

然而,计时器机制是您必须自己实现的

然后我需要制作更多的子类。。。是吗

不是真的

通过创建新的AddStringTask实例,可以再次执行相同的AsyncTask。这是因为它将是一个不同于其他实例的新实例,并且每个实例都有自己的线程。它们不是相互依存的


但是,计时器机制必须由您自己实现。

您也可以使用相同的异步任务并从同一线程发布不同的进度。比如说:

    protected Void doInBackground(Void... unused) {
    ... 
        System.sleep(500);
        publishProgress(x);
        System.sleep(500);
        pulbishProgress(y);
     }


您还可以使用相同的AsyncTask并从同一线程发布不同的进度。比如说:

    protected Void doInBackground(Void... unused) {
    ... 
        System.sleep(500);
        publishProgress(x);
        System.sleep(500);
        pulbishProgress(y);
     }


你能给我举个例子说明我将如何实现计时器机制吗?谢谢@瑞恩:举个例子,使用。在那里,你可以检查时间的长短,并根据你的具体要求开始新的任务。你能给我一个如何实现计时器机制的例子吗?谢谢@瑞恩:举个例子,使用。在那里,您可以检查时间的长短,并根据您的具体需求启动新任务。