0

Androidのドキュメントによると

「Handler を使用すると、スレッドの MessageQueue に関連付けられた Message および Runnable オブジェクトを送信および処理できます。各 Handler インスタンスは、単一のスレッドとそのスレッドのメッセージ キューに関連付けられています。新しい Handler を作成すると、スレッド / メッセージ キューにバインドされます。それを作成しているスレッドの - その時点から、メッセージと実行可能ファイルをそのメッセージ キューに配信し、メッセージ キューから出てきたときにそれらを実行します。」

1 つのスレッドが Handler を使用して他のスレッド メッセージ キューに投稿するマルチスレッド アプリケーションで Handler を完全に使用できますが、シングル スレッド アプリケーションで Handler を使用するのは何ですか。私がこれを尋ねている理由は、シングル スレッド アプリケーションで HAndler を使用するサンプル アプリケーションを developer.google.com でいくつか見たからです。ここに一例があります。

4

1 に答える 1

1

投稿したコード例はシングルスレッドではありません。たとえば、AsyncTaskのdoInBackground()メソッドは、UIスレッドとは別のスレッドで実行されます。そのため、そのメソッドでハンドラーが呼び出されています。

AsyncTasksを読んでから、サンプルのReverseGeocodingTaskを確認してください。

于 2012-10-05T18:24:58.827 に答える