几次运行后,AsyncTask在onPreExecute之后停止

时间:2012-10-11 22:01:20

标签: android multithreading asynchronous android-asynctask

我的程序中AsyncTask似乎在应用程序运行多次后onPreExecute()之后停止。我的意思是,我可以使用该应用程序,一切工作大约10-20次运行,但然后它停止。这是正在发生的事情:

private class MyTask extends AsyncTask<String, Void, Data> {

    protected void onPreExecute() {
        // show loading dialog
        Log.d(TAG, "end onPreExecute");
    }

    protected Data doInBackground(String... params) {
        Log.d(TAG, "start doInBackground");
        // do stuff
    }

    protected void onPostExecute(Data myData) {
        // do stuff
    }

}

当它停止工作时,会发生的情况是加载对话框会一直保持加载状态,而"end onPreExecute"会打印,但"start doInBackground"不会。

为什么会这样?

1 个答案:

答案 0 :(得分:1)

很难说问题出在哪里。由于您的异步任务似乎在前几次工作,可能是这个API功能也是"unstable" for your intention ......

您的问题的解决方案可能只是,用不同的Thread解决方案替换AsyncTask:

希望有所帮助!