在AsyncTask的文档中,它给出了与线程相关的一项规则如下:
这意味着每次想要使用该任务时必须创建一个新的类实例,对吗?换句话说,必须按照以下方式完成:
- 任务只能执行一次(如果尝试进行第二次执行,则会抛出异常)。
new DownloadFilesTask().execute(url1, url2, url3);
new DownloadFilesTask().execute(url4, url5, url6);
反过来,你不能做以下事情:
DownloadFilesTask dfTask = new DownloadFilesTask();
dfTask.execute(url1, url2, url3);
dfTask.execute(url4, url5, url6);
有人能验证这是否是准确的解释吗?
我认识到我在打字时几乎已经回答了自己的问题......但对我来说并不是显而易见的,所以我认为将其发布仍然会有用。