我遇到的问题是关于两个单独的 Asynctask 类。第一个 asynctask 在 doInBackground 方法中使用网络操作
HttpResponse httpResponse = httpClient.execute(httpPost);
而另一个是使用progressDialog加载图像的线程。
所以发生的情况是,如果我使用慢速互联网连接(这意味着第一个异步任务尚未完成)然后直接转到第二个异步任务,第二个类将等到第一个完成。
顺便说一句,在我调用第一个 asynctask 之后,我直接完成了活动并调用了另一个,这与什么有关吗?
tl;博士版本:
在第一个 asynctask 完成之前,第二个 asynctask 不会执行 doinbackground 进程
我知道这一点,因为进度对话框显示了很长时间(我在 preExecute 中显示它并在 postexecute 中将其关闭)
编辑:
第一个异步任务涉及等待来自网络的响应。因此,虽然没有响应,但第二个 asynctask 不会执行其 doinbackground 过程。
编辑2:
有没有办法让我正确使用这两个异步任务,这样第二个就不必等待第一个完成?