AyncTask在这种情况下的表现究竟如何?

时间:2011-02-11 22:06:36

标签: android

有一个AsyncTask从Web获取内容,然后在onPostExecute(...)中调用Activity.showDialog。 如果

会发生什么
  1. 我在Activity B中启动AsyncTask
  2. 返回活动A
  3. AsyncTask完成它的工作(doInBackground()返回)
  4. ? onPostExecute()是否被调用?

2 个答案:

答案 0 :(得分:3)

根据AsyncTask的实现方式,您可能会“泄漏”活动B,直到AsyncTask结束。理想情况下,当活动B被销毁时,应取消AsyncTask。

答案 1 :(得分:0)

我发现我的Activity完成的事实对AsyncTask没有影响。我在onPostExecute()中调用了showDialog()。当用户按下BACK,活动结束并调用onPostExecute()时,这会导致强制关闭。