0

トレッドループを作るいくつかの種類の違いを理解するのに問題があります。

1つは(大まかなデモンストレーション)です:

Thread thread=new Thread("name") {
public void run()
  {
  // do stuff
  }
}.start();

2つ目は、実行可能にするクラスを作成し、スレッドを作成することです。

Thread thread = new Thread(this,"name").start();

そして3番目(Androidでは、他の方法で機能するかどうかはわかりません):ハンドラーの作成、ランナブルの作成、、、handler.postDelayed(runnable)またはhandler.post(runnable)

違いが何であるかわかりません。私が気付いた唯一のことは、スレッドを作成すると、ハンドラーを使用するよりも実行ループがはるかに高速に動作することです。誰かが私にそれらの違いは何ですか、そして私は何に何を使うべきかを説明できますか?

4

1 に答える 1

2

1番目と2番目の方法はまったく同じです。さまざまな状況でより役立つ可能性があるのは、さまざまな構造です。Threadを実装Runnableし、新しいスレッドで自分自身を実行する可能性があることに注意してください。

3番目の方法はあなたが少し誤解しています。がインスタンス化されたスレッドでHandler実行されます(別のルーパーを指定しない限り)。UIスレッドで作成した場合は、UIスレッドでも実行されます。その結果、動作が遅くなる可能性があります。RunnableHandlerHandlerRunnable

于 2012-09-19T12:25:58.740 に答える