2012-02-04 12 views

答えて

1

いいえ、an AsyncTask runs in a separate thread AsyncTaskが実行されている間、ActivityとAsyncTaskの共有状態(この場合はインスタンス変数)の場合は、通常のスレッド同期を行う必要があります。

一般的には、onPublishProgress()onPostExecute()を実装して、両方のメソッドがUIスレッドで実行されるため、AsyncTaskからActivityに状態をパブリッシュします。

1

synchronizeなしでインスタンスに直接アクセスする場合、コードはではなく、スレッドセーフです。 synchronizeを使用するか、単にonPublishProggress()メソッドAsyncTaskのインスタンスにアクセスするだけです。

関連する問題