0

几个月以来让我感到困惑的事情。以下构造是否保存?AsyncTask 是 Activity 中的内部类。AsyncTask 调用 Activity 类中的方法。此方法不使用活动对象或 UI 调用。

public class MyActivity extends Activity {

    private class MyAsyncTask extends AsyncTask<Void, Void, Void> {

        @Override
        protected void doInBackground(...) {
            longRunningMethod();
        }

        @Override
        protected void onPostExecute(... ) {
        }

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

    private void longRunningMethod() {
        // ...
    }
}
4

2 回答 2

0

只要它不尝试修改 UI,它就是安全的。

于 2012-07-19T10:56:12.750 回答
0

如果不更新 UI,则安全,如果您正在更新 UI,则可以使用 runOnUiThread 方法。

于 2012-07-19T10:57:54.747 回答