• ベストアンサー

「UIスレッド」「マルチスレッド」の違い

Androidで、「UIスレッド」「マルチスレッド」の違い、を教えてください。 ■下記理解で合ってるでしょうか? Androidは、「シングルスレッド」の「UIスレッド」モデルなので、それを「マルチスレッド」で動かそうとすると、「ワーカースレッド」で処理する必要がある ・「マルチスレッド」=「マルチタスク」? ・「UIスレッド」とは、メインスレッドが「GUI (グラフィカルユーザーインターフェイス) 処理」を行うものを指す? ・つまり、「Android」=「UIスレッド」? ・「UIスレッド」って何の用語? Androidに特化した用語? それともJAVAの用語? あるいはそれ以外?

質問者が選んだベストアンサー

  • ベストアンサー
  • teketon
  • ベストアンサー率65% (141/215)
回答No.1

違います。 JavaアプリケーションにおけるメインスレッドをAndroidでは「UIスレッド」と呼びます。 Androidはキーのイベント配信等を行うスレッドが1つの「シングルスレッド」モデルです。 重い処理をメインスレッド(=UIスレッド)で行うと、画面の処理が止まったようにみえるため、 重い処理はマルチスレッドを使い、バックグラウンド(=ワーカースレッド)で処理する必要があります。 こんな感じ。 マルチスレッドとマルチタスク(プロセス)は異なり、スレッドとプロセスの違いを調べるといいです。 UIスレッドは、メインスレッドです。 当然、AndroidとUIスレッドは異なります。 UIスレッドがなんの用語かは知りませんが、Androidでは上記のように定義されています。

参考URL:
http://www.techdoctranslator.com/resources/articles/articles-index/painless-threading
re97
質問者

お礼

「回答」&「リンク提示」ありがとうございました。 大変参考になりましたー