0

我有一个 AsyncTask(在后台进行一些网络连接检查),假设它在 onPostExecute 中什么都不做。问题是当我查看 DDMS 线程视图时,我看到我的 AsyncTask 仍在等待 smth,尽管后台工作已经完成并且我什至退出了应用程序。

我认为这种行为不正常,有人可以启发我吗?

public class CheckConnectionTask extends AsyncTask<String, Integer, Boolean> {
    private Integer forTask = null;

    public CheckConnectionTask(Integer forTask) {
        super();
        this.forTask = forTask;
    }

    @Override
    protected void onPreExecute() {
        super.onPreExecute();
    }

    @Override
    protected Boolean doInBackground(String... params) {
        if (D) Log.d(TAG, "doInBackground");
        Thread.currentThread().setName("CheckConnectionTask for task " + forTask);

        return DataUtils.isInternetConnectionAvailable(CurrentActivity.this);
    }

    @Override
    protected void onPostExecute(Boolean result) {
        if (D) Log.d(TAG, "onPostExecute");
        super.onPostExecute(result);

        //do some UI work here, nothing for the moment

    }

}
4

0 回答 0